home *** CD-ROM | disk | FTP | other *** search
/ QuickTime 1.0 for Developers / QuickTime 1.0 for Developers.iso / System Stuff / Sound Mgr. Drivers / Articulate Systems / Voice Impact Sound Driver / Voice Impact Sound Driver.rsrc / INIT_22.txt < prev    next >
Text File  |  1991-08-27  |  140KB  |  2,546 lines

  1. start:
  2. 00000000  4E56 FDF8                link       A6, -0x0208
  3. 00000004  48E7 0F18                movem.l    -[A7], D4,D5,D6,D7,A3,A4
  4. 00000008  49EE FDFC                lea.l      A4, [A6 - 0x204]
  5. 0000000C  7000                     moveq.l    D0, 0x00
  6. 0000000E  2D40 FFFC                move.l     [A6 - 0x4], D0
  7. 00000012  4207                     clr.b      D7
  8. 00000014  2F00                     move.l     -[A7], D0
  9. 00000016  2F3C 0000 A0AD           move.l     -[A7], 0xA0AD
  10. 0000001C  4EBA 0DE8                jsr        [PC + 0xDE8 /* 00000E06 */]
  11. 00000020  4A00                     tst.b      D0
  12. 00000022  508F                     addq.l     A7, 8
  13. 00000024  672C                     beq        +0x2E /* 00000052 */
  14. 00000026  558F                     subq.l     A7, 2
  15. 00000028  2F3C 766D 2020           move.l     -[A7], 0x766D2020 /* 'vm  ' */
  16. 0000002E  486E FFFC                pea.l      [A6 - 0x4]
  17. 00000032  4EBA 1612                jsr        [PC + 0x1612 /* 00001646 */]
  18. 00000036  301F                     move.w     D0, [A7]+
  19. 00000038  48C0                     ext.l      D0
  20. 0000003A  6616                     bne        +0x18 /* 00000052 */
  21. 0000003C  4AAE FFFC                tst.l      [A6 - 0x4]
  22. 00000040  6710                     beq        +0x12 /* 00000052 */
  23. 00000042  3F3C F023                move.w     -[A7], 0xF023
  24. 00000046  70FF                     moveq.l    D0, 0xFFFFFFFF
  25. 00000048  3F00                     move.w     -[A7], D0
  26. 0000004A  4EBA 048E                jsr        [PC + 0x48E /* 000004DA */]
  27. 0000004E  6000 012A                bra        +0x12C /* 0000017A */
  28. label00000052:
  29. 00000052  558F                     subq.l     A7, 2
  30. 00000054  7003                     moveq.l    D0, 0x03
  31. 00000056  3F00                     move.w     -[A7], D0
  32. 00000058  4EBA 0F9A                jsr        [PC + 0xF9A /* 00000FF4 */]
  33. 0000005C  381F                     move.w     D4, [A7]+
  34. 0000005E  3004                     move.w     D0, D4
  35. 00000060  48C0                     ext.l      D0
  36. 00000062  72FF                     moveq.l    D1, 0xFFFFFFFF
  37. 00000064  B280                     cmp.l      D1, D0
  38. 00000066  6720                     beq        +0x22 /* 00000088 */
  39. 00000068  2F0C                     move.l     -[A7], A4
  40. 0000006A  3F3C F020                move.w     -[A7], 0xF020
  41. 0000006E  7003                     moveq.l    D0, 0x03
  42. 00000070  3F00                     move.w     -[A7], D0
  43. 00000072  4EBA 1422                jsr        [PC + 0x1422 /* 00001496 */]
  44. 00000076  486E FEFC                pea.l      [A6 - 0x104]
  45. 0000007A  3F3C F024                move.w     -[A7], 0xF024
  46. 0000007E  7003                     moveq.l    D0, 0x03
  47. 00000080  3F00                     move.w     -[A7], D0
  48. 00000082  4EBA 1412                jsr        [PC + 0x1412 /* 00001496 */]
  49. 00000086  601A                     bra        +0x1C /* 000000A2 */
  50. label00000088:
  51. 00000088  487A 0108                pea.l      [PC + 0x108 /* 00000192, value 0x92E5649 '\t.VI', pstring ".VIDriver" */]
  52. 0000008C  2F0C                     move.l     -[A7], A4
  53. 0000008E  4EBA 17DE                jsr        [PC + 0x17DE /* 0000186E */]
  54. 00000092  487A 00F0                pea.l      [PC + 0xF0 /* 00000184, value 0xC566F69, pstring "Voice Impact" */]
  55. 00000096  486E FEFC                pea.l      [A6 - 0x104]
  56. 0000009A  4EBA 17D2                jsr        [PC + 0x17D2 /* 0000186E */]
  57. 0000009E  4FEF 0010                lea.l      A7, [A7 + 0x10]
  58. label000000A2:
  59. 000000A2  4EBA 00FA                jsr        [PC + 0xFA /* 0000019E */]
  60. 000000A6  3A00                     move.w     D5, D0
  61. 000000A8  48C0                     ext.l      D0
  62. 000000AA  6700 00A4                beq        +0xA6 /* 00000150 */
  63. 000000AE  48C5                     ext.l      D5
  64. 000000B0  2005                     move.l     D0, D5
  65. 000000B2  5280                     addq.l     D0, 1
  66. 000000B4  4480                     neg.l      D0
  67. 000000B6  3D40 FDF8                move.w     [A6 - 0x208], D0
  68. 000000BA  598F                     subq.l     A7, 4
  69. 000000BC  2F3C 4452 5652           move.l     -[A7], 0x44525652 /* 'DRVR' */
  70. 000000C2  2F0C                     move.l     -[A7], A4
  71. 000000C4  A9A1                     syscall    GetNamedResource
  72. 000000C6  265F                     movea.l    A3, [A7]+
  73. 000000C8  2F0B                     move.l     -[A7], A3
  74. 000000CA  A992                     syscall    DetachResource
  75. 000000CC  2F0B                     move.l     -[A7], A3
  76. 000000CE  205F                     movea.l    A0, [A7]+
  77. 000000D0  A029                     syscall    HLock
  78. 000000D2  558F                     subq.l     A7, 2
  79. 000000D4  2F0B                     move.l     -[A7], A3
  80. 000000D6  3F2E FDF8                move.w     -[A7], [A6 - 0x208]
  81. 000000DA  4EBA 03E6                jsr        [PC + 0x3E6 /* 000004C2 */]
  82. 000000DE  301F                     move.w     D0, [A7]+
  83. 000000E0  48C0                     ext.l      D0
  84. 000000E2  6666                     bne        +0x68 /* 0000014A */
  85. 000000E4  48C5                     ext.l      D5
  86. 000000E6  2F05                     move.l     -[A7], D5
  87. 000000E8  2F0B                     move.l     -[A7], A3
  88. 000000EA  4EBA 00E6                jsr        [PC + 0xE6 /* 000001D2 */]
  89. 000000EE  2F0B                     move.l     -[A7], A3
  90. 000000F0  205F                     movea.l    A0, [A7]+
  91. 000000F2  A02A                     syscall    HUnlock
  92. 000000F4  558F                     subq.l     A7, 2
  93. 000000F6  2F0C                     move.l     -[A7], A4
  94. 000000F8  486E FDFA                pea.l      [A6 - 0x206]
  95. 000000FC  4EBA 0FB4                jsr        [PC + 0xFB4 /* 000010B2 */]
  96. 00000100  301F                     move.w     D0, [A7]+
  97. 00000102  48C0                     ext.l      D0
  98. 00000104  508F                     addq.l     A7, 8
  99. 00000106  662E                     bne        +0x30 /* 00000136 */
  100. 00000108  558F                     subq.l     A7, 2
  101. 0000010A  3F2E FDFA                move.w     -[A7], [A6 - 0x206]
  102. 0000010E  486E FEFC                pea.l      [A6 - 0x104]
  103. 00000112  4EBA 0B30                jsr        [PC + 0xB30 /* 00000C44 */]
  104. 00000116  301F                     move.w     D0, [A7]+
  105. 00000118  48C0                     ext.l      D0
  106. 0000011A  6634                     bne        +0x36 /* 00000150 */
  107. 0000011C  2F0C                     move.l     -[A7], A4
  108. 0000011E  4EBA 0108                jsr        [PC + 0x108 /* 00000228 */]
  109. 00000122  48C0                     ext.l      D0
  110. 00000124  588F                     addq.l     A7, 4
  111. 00000126  6606                     bne        +0x8 /* 0000012E */
  112. 00000128  3C3C F022                move.w     D6, 0xF022
  113. 0000012C  6004                     bra        +0x6 /* 00000132 */
  114. label0000012E:
  115. 0000012E  3C3C F024                move.w     D6, 0xF024
  116. label00000132:
  117. 00000132  7E01                     moveq.l    D7, 0x01
  118. 00000134  601A                     bra        +0x1C /* 00000150 */
  119. label00000136:
  120. 00000136  558F                     subq.l     A7, 2
  121. 00000138  3F2E FDF8                move.w     -[A7], [A6 - 0x208]
  122. 0000013C  4EBA 0392                jsr        [PC + 0x392 /* 000004D0 */]
  123. 00000140  2F0B                     move.l     -[A7], A3
  124. 00000142  205F                     movea.l    A0, [A7]+
  125. 00000144  A023                     syscall    DisposHandle/DisposeHandle
  126. 00000146  548F                     addq.l     A7, 2
  127. 00000148  6006                     bra        +0x8 /* 00000150 */
  128. label0000014A:
  129. 0000014A  2F0B                     move.l     -[A7], A3
  130. 0000014C  205F                     movea.l    A0, [A7]+
  131. 0000014E  A02A                     syscall    HUnlock
  132. label00000150:
  133. 00000150  48C4                     ext.l      D4
  134. 00000152  70FF                     moveq.l    D0, 0xFFFFFFFF
  135. 00000154  B084                     cmp.l      D0, D4
  136. 00000156  6704                     beq        +0x6 /* 0000015C */
  137. 00000158  3F04                     move.w     -[A7], D4
  138. 0000015A  A99A                     syscall    CloseResFile
  139. label0000015C:
  140. 0000015C  7000                     moveq.l    D0, 0x00
  141. 0000015E  1007                     move.b     D0, D7
  142. 00000160  660E                     bne        +0x10 /* 00000170 */
  143. 00000162  3F3C F023                move.w     -[A7], 0xF023
  144. 00000166  70FF                     moveq.l    D0, 0xFFFFFFFF
  145. 00000168  3F00                     move.w     -[A7], D0
  146. 0000016A  4EBA 036E                jsr        [PC + 0x36E /* 000004DA */]
  147. 0000016E  600A                     bra        +0xC /* 0000017A */
  148. label00000170:
  149. 00000170  3F06                     move.w     -[A7], D6
  150. 00000172  70FF                     moveq.l    D0, 0xFFFFFFFF
  151. 00000174  3F00                     move.w     -[A7], D0
  152. 00000176  4EBA 0362                jsr        [PC + 0x362 /* 000004DA */]
  153. label0000017A:
  154. 0000017A  4CEE 18F0 FDE0           movem.l    D4,D5,D6,D7,A3,A4, [A6 - 0x220]
  155. 00000180  4E5E                     unlink     A6
  156. 00000182  4E75                     rts
  157. 00000184  0C56 6F69                cmpi.w     [A6], 0x6F69 /* 'oi' */
  158. 00000188  6365                     bls        +0x67 /* 000001EF */
  159. 0000018A  2049                     movea.l    A0, A1
  160. 0000018C  6D70                     blt        +0x72 /* 000001FE */
  161. 0000018E  6163                     bsr        +0x65 /* 000001F3 */
  162. 00000190  7400                     moveq.l    D2, 0x00
  163. 00000192  092E 5649                btst       [A6 + 0x5649], D4
  164. 00000196  4472 6976                neg.w      <<invalid full ext with IS == 1 and I/IS == 6>>
  165. 0000019A  6572                     bcs        +0x74 /* 0000020E */
  166. 0000019C  0000 48E7                ori.b      D0, 0xE7
  167. // begin alternate branch 0000019E-000001A2
  168. fn0000019E:
  169. 0000019E  48E7 0118                movem.l    -[A7], D7,A3,A4
  170. // end alternate branch 0000019E-000001A2
  171. fn0000019E: // (misaligned)
  172. 000001A0  0118                     btst       [A0]+, D0
  173. 000001A2  3E38 01D2                move.w     D7, [0x000001D2 /* UnitNtryCnt */]
  174. 000001A6  2878 011C                movea.l    A4, [0x0000011C /* UTableBase */]
  175. 000001AA  6012                     bra        +0x14 /* 000001BE */
  176. label000001AC:
  177. 000001AC  48C7                     ext.l      D7
  178. 000001AE  2007                     move.l     D0, D7
  179. 000001B0  E580                     asl        D0, 2
  180. 000001B2  2640                     movea.l    A3, D0
  181. 000001B4  D7CC                     add.l      A3, A4
  182. 000001B6  4A93                     tst.l      [A3]
  183. 000001B8  6604                     bne        +0x6 /* 000001BE */
  184. 000001BA  3007                     move.w     D0, D7
  185. 000001BC  600E                     bra        +0x10 /* 000001CC */
  186. label000001BE:
  187. 000001BE  5347                     subq.w     D7, 1
  188. 000001C0  3007                     move.w     D0, D7
  189. 000001C2  48C0                     ext.l      D0
  190. 000001C4  7227                     moveq.l    D1, 0x27
  191. 000001C6  B280                     cmp.l      D1, D0
  192. 000001C8  6DE2                     blt        -0x1C /* 000001AC */
  193. 000001CA  7000                     moveq.l    D0, 0x00
  194. label000001CC:
  195. 000001CC  4CDF 1880                movem.l    D7,A3,A4, [A7]+
  196. 000001D0  4E75                     rts
  197. fn000001D2:
  198. 000001D2  4E56 FFFC                link       A6, -0x0004
  199. 000001D6  48E7 0018                movem.l    -[A7], A3,A4
  200. 000001DA  286E 0008                movea.l    A4, [A6 + 0x8]
  201. 000001DE  2678 011C                movea.l    A3, [0x0000011C /* UTableBase */]
  202. 000001E2  302E 000E                move.w     D0, [A6 + 0xE]
  203. 000001E6  48C0                     ext.l      D0
  204. 000001E8  E580                     asl        D0, 2
  205. 000001EA  D08B                     add.l      D0, A3
  206. 000001EC  2D40 FFFC                move.l     [A6 - 0x4], D0
  207. 000001F0  206E FFFC                movea.l    A0, [A6 - 0x4]
  208. 000001F4  2050                     movea.l    A0, [A0]
  209. 000001F6  2650                     movea.l    A3, [A0]
  210. 000001F8  268C                     move.l     [A3], A4
  211. 000001FA  2054                     movea.l    A0, [A4]
  212. 000001FC  3750 0004                move.w     [A3 + 0x4], [A0]
  213. // begin alternate branch 000001FE-00000206
  214. label000001FE:
  215. 000001FE  0004 006B                ori.b      D4, 0x6B /* 'k' */
  216. 00000202  0040 0004                ori.w      D0, 0x4
  217. // end alternate branch 000001FE-00000206
  218. label000001FE: // (misaligned)
  219. 00000200  006B 0040 0004           ori.w      [A3 + 0x4], 0x40 /* '@' */
  220. 00000206  2054                     movea.l    A0, [A4]
  221. 00000208  3768 0002 0022           move.w     [A3 + 0x22], [A0 + 0x2]
  222. label0000020E:
  223. 0000020E  2054                     movea.l    A0, [A4]
  224. 00000210  3768 0004 0024           move.w     [A3 + 0x24], [A0 + 0x4]
  225. 00000216  2054                     movea.l    A0, [A4]
  226. 00000218  3768 0006 0026           move.w     [A3 + 0x26], [A0 + 0x6]
  227. 0000021E  4CEE 1800 FFF4           movem.l    A3,A4, [A6 - 0xC]
  228. 00000224  4E5E                     unlink     A6
  229. 00000226  4E75                     rts
  230. fn00000228:
  231. 00000228  4E56 FFFC                link       A6, -0x0004
  232. 0000022C  48E7 0718                movem.l    -[A7], D5,D6,D7,A3,A4
  233. 00000230  286E 0008                movea.l    A4, [A6 + 0x8]
  234. 00000234  4207                     clr.b      D7
  235. 00000236  4205                     clr.b      D5
  236. 00000238  598F                     subq.l     A7, 4
  237. 0000023A  2F3C 4153 494D           move.l     -[A7], 0x4153494D /* 'ASIM' */
  238. 00000240  2F0C                     move.l     -[A7], A4
  239. 00000242  A820                     syscall    Get1NamedResource
  240. 00000244  265F                     movea.l    A3, [A7]+
  241. 00000246  200B                     move.l     D0, A3
  242. 00000248  660A                     bne        +0xC /* 00000254 */
  243. 0000024A  558F                     subq.l     A7, 2
  244. 0000024C  A9AF                     syscall    ResError
  245. 0000024E  301F                     move.w     D0, [A7]+
  246. 00000250  6000 01C6                bra        +0x1C8 /* 00000418 */
  247. label00000254:
  248. 00000254  2F0B                     move.l     -[A7], A3
  249. 00000256  205F                     movea.l    A0, [A7]+
  250. 00000258  A064                     syscall    MoveHHi
  251. 0000025A  2F0B                     move.l     -[A7], A3
  252. 0000025C  205F                     movea.l    A0, [A7]+
  253. 0000025E  A029                     syscall    HLock
  254. 00000260  2F0C                     move.l     -[A7], A4
  255. 00000262  3F3C F024                move.w     -[A7], 0xF024
  256. 00000266  7003                     moveq.l    D0, 0x03
  257. 00000268  3F00                     move.w     -[A7], D0
  258. 0000026A  4EBA 122A                jsr        [PC + 0x122A /* 00001496 */]
  259. 0000026E  558F                     subq.l     A7, 2
  260. 00000270  2F0C                     move.l     -[A7], A4
  261. 00000272  7001                     moveq.l    D0, 0x01
  262. 00000274  3F00                     move.w     -[A7], D0
  263. 00000276  486E FFFC                pea.l      [A6 - 0x4]
  264. 0000027A  4EBA 0650                jsr        [PC + 0x650 /* 000008CC */]
  265. 0000027E  3C1F                     move.w     D6, [A7]+
  266. 00000280  3006                     move.w     D0, D6
  267. 00000282  48C0                     ext.l      D0
  268. 00000284  670C                     beq        +0xE /* 00000292 */
  269. 00000286  2F0B                     move.l     -[A7], A3
  270. 00000288  205F                     movea.l    A0, [A7]+
  271. 0000028A  A02A                     syscall    HUnlock
  272. 0000028C  3006                     move.w     D0, D6
  273. 0000028E  6000 0188                bra        +0x18A /* 00000418 */
  274. label00000292:
  275. 00000292  558F                     subq.l     A7, 2
  276. 00000294  2F2E FFFC                move.l     -[A7], [A6 - 0x4]
  277. 00000298  2F3C 4466 6C74           move.l     -[A7], 0x44666C74 /* 'Dflt' */
  278. 0000029E  2053                     movea.l    A0, [A3]
  279. 000002A0  2F08                     move.l     -[A7], A0
  280. 000002A2  4EBA 08D6                jsr        [PC + 0x8D6 /* 00000B7A */]
  281. 000002A6  301F                     move.w     D0, [A7]+
  282. 000002A8  48C0                     ext.l      D0
  283. 000002AA  6702                     beq        +0x4 /* 000002AE */
  284. 000002AC  7E01                     moveq.l    D7, 0x01
  285. label000002AE:
  286. 000002AE  558F                     subq.l     A7, 2
  287. 000002B0  2F2E FFFC                move.l     -[A7], [A6 - 0x4]
  288. 000002B4  2F3C 676F 6F64           move.l     -[A7], 0x676F6F64 /* 'good' */
  289. 000002BA  2053                     movea.l    A0, [A3]
  290. 000002BC  4868 0004                pea.l      [A0 + 0x4]
  291. 000002C0  4EBA 08B8                jsr        [PC + 0x8B8 /* 00000B7A */]
  292. 000002C4  3C1F                     move.w     D6, [A7]+
  293. 000002C6  3006                     move.w     D0, D6
  294. 000002C8  48C0                     ext.l      D0
  295. 000002CA  6730                     beq        +0x32 /* 000002FC */
  296. 000002CC  7000                     moveq.l    D0, 0x00
  297. 000002CE  2F00                     move.l     -[A7], D0
  298. 000002D0  48C6                     ext.l      D6
  299. 000002D2  2F06                     move.l     -[A7], D6
  300. 000002D4  2053                     movea.l    A0, [A3]
  301. 000002D6  4868 0004                pea.l      [A0 + 0x4]
  302. 000002DA  2F3C 676F 6F64           move.l     -[A7], 0x676F6F64 /* 'good' */
  303. 000002E0  2F2E FFFC                move.l     -[A7], [A6 - 0x4]
  304. 000002E4  4EBA 013C                jsr        [PC + 0x13C /* 00000422 */]
  305. 000002E8  4FEF 0010                lea.l      A7, [A7 + 0x10]
  306. 000002EC  2200                     move.l     D1, D0
  307. 000002EE  201F                     move.l     D0, [A7]+
  308. 000002F0  1A01                     move.b     D5, D1
  309. 000002F2  7200                     moveq.l    D1, 0x00
  310. 000002F4  1205                     move.b     D1, D5
  311. 000002F6  57C0                     seq        D0
  312. 000002F8  4400                     neg.b      D0
  313. 000002FA  1E00                     move.b     D7, D0
  314. label000002FC:
  315. 000002FC  558F                     subq.l     A7, 2
  316. 000002FE  2F2E FFFC                move.l     -[A7], [A6 - 0x4]
  317. 00000302  2F3C 6265 7472           move.l     -[A7], 0x62657472 /* 'betr' */
  318. 00000308  2053                     movea.l    A0, [A3]
  319. 0000030A  4868 000C                pea.l      [A0 + 0xC]
  320. 0000030E  4EBA 086A                jsr        [PC + 0x86A /* 00000B7A */]
  321. 00000312  3C1F                     move.w     D6, [A7]+
  322. 00000314  3006                     move.w     D0, D6
  323. 00000316  48C0                     ext.l      D0
  324. 00000318  6730                     beq        +0x32 /* 0000034A */
  325. 0000031A  7000                     moveq.l    D0, 0x00
  326. 0000031C  2F00                     move.l     -[A7], D0
  327. 0000031E  48C6                     ext.l      D6
  328. 00000320  2F06                     move.l     -[A7], D6
  329. 00000322  2053                     movea.l    A0, [A3]
  330. 00000324  4868 000C                pea.l      [A0 + 0xC]
  331. 00000328  2F3C 6265 7472           move.l     -[A7], 0x62657472 /* 'betr' */
  332. 0000032E  2F2E FFFC                move.l     -[A7], [A6 - 0x4]
  333. 00000332  4EBA 00EE                jsr        [PC + 0xEE /* 00000422 */]
  334. 00000336  4FEF 0010                lea.l      A7, [A7 + 0x10]
  335. 0000033A  2200                     move.l     D1, D0
  336. 0000033C  201F                     move.l     D0, [A7]+
  337. 0000033E  1A01                     move.b     D5, D1
  338. 00000340  7200                     moveq.l    D1, 0x00
  339. 00000342  1205                     move.b     D1, D5
  340. 00000344  57C0                     seq        D0
  341. 00000346  4400                     neg.b      D0
  342. 00000348  1E00                     move.b     D7, D0
  343. label0000034A:
  344. 0000034A  558F                     subq.l     A7, 2
  345. 0000034C  2F2E FFFC                move.l     -[A7], [A6 - 0x4]
  346. 00000350  2F3C 6265 7374           move.l     -[A7], 0x62657374 /* 'best' */
  347. 00000356  2053                     movea.l    A0, [A3]
  348. 00000358  4868 0014                pea.l      [A0 + 0x14]
  349. 0000035C  4EBA 081C                jsr        [PC + 0x81C /* 00000B7A */]
  350. 00000360  3C1F                     move.w     D6, [A7]+
  351. 00000362  3006                     move.w     D0, D6
  352. 00000364  48C0                     ext.l      D0
  353. 00000366  6730                     beq        +0x32 /* 00000398 */
  354. 00000368  7000                     moveq.l    D0, 0x00
  355. 0000036A  2F00                     move.l     -[A7], D0
  356. 0000036C  48C6                     ext.l      D6
  357. 0000036E  2F06                     move.l     -[A7], D6
  358. 00000370  2053                     movea.l    A0, [A3]
  359. 00000372  4868 0014                pea.l      [A0 + 0x14]
  360. 00000376  2F3C 6265 7374           move.l     -[A7], 0x62657374 /* 'best' */
  361. 0000037C  2F2E FFFC                move.l     -[A7], [A6 - 0x4]
  362. 00000380  4EBA 00A0                jsr        [PC + 0xA0 /* 00000422 */]
  363. 00000384  4FEF 0010                lea.l      A7, [A7 + 0x10]
  364. 00000388  2200                     move.l     D1, D0
  365. 0000038A  201F                     move.l     D0, [A7]+
  366. 0000038C  1A01                     move.b     D5, D1
  367. 0000038E  7200                     moveq.l    D1, 0x00
  368. 00000390  1205                     move.b     D1, D5
  369. 00000392  57C0                     seq        D0
  370. 00000394  4400                     neg.b      D0
  371. 00000396  1E00                     move.b     D7, D0
  372. label00000398:
  373. 00000398  558F                     subq.l     A7, 2
  374. 0000039A  2F2E FFFC                move.l     -[A7], [A6 - 0x4]
  375. 0000039E  2F3C 7175 616C           move.l     -[A7], 0x7175616C /* 'qual' */
  376. 000003A4  2053                     movea.l    A0, [A3]
  377. 000003A6  2F08                     move.l     -[A7], A0
  378. 000003A8  4EBA 07D0                jsr        [PC + 0x7D0 /* 00000B7A */]
  379. 000003AC  301F                     move.w     D0, [A7]+
  380. 000003AE  48C0                     ext.l      D0
  381. 000003B0  6702                     beq        +0x4 /* 000003B4 */
  382. 000003B2  7E01                     moveq.l    D7, 0x01
  383. label000003B4:
  384. 000003B4  558F                     subq.l     A7, 2
  385. 000003B6  2F2E FFFC                move.l     -[A7], [A6 - 0x4]
  386. 000003BA  2F3C 5350 7274           move.l     -[A7], 0x53507274 /* 'SPrt' */
  387. 000003C0  2053                     movea.l    A0, [A3]
  388. 000003C2  4868 0020                pea.l      [A0 + 0x20]
  389. 000003C6  4EBA 07B2                jsr        [PC + 0x7B2 /* 00000B7A */]
  390. 000003CA  301F                     move.w     D0, [A7]+
  391. 000003CC  48C0                     ext.l      D0
  392. 000003CE  6702                     beq        +0x4 /* 000003D2 */
  393. 000003D0  7E01                     moveq.l    D7, 0x01
  394. label000003D2:
  395. 000003D2  558F                     subq.l     A7, 2
  396. 000003D4  2F2E FFFC                move.l     -[A7], [A6 - 0x4]
  397. 000003D8  2F3C 576F 7264           move.l     -[A7], 0x576F7264 /* 'Word' */
  398. 000003DE  2053                     movea.l    A0, [A3]
  399. 000003E0  4868 002A                pea.l      [A0 + 0x2A]
  400. 000003E4  4EBA 0794                jsr        [PC + 0x794 /* 00000B7A */]
  401. 000003E8  301F                     move.w     D0, [A7]+
  402. 000003EA  48C0                     ext.l      D0
  403. 000003EC  6702                     beq        +0x4 /* 000003F0 */
  404. 000003EE  7E01                     moveq.l    D7, 0x01
  405. label000003F0:
  406. 000003F0  558F                     subq.l     A7, 2
  407. 000003F2  2F2E FFFC                move.l     -[A7], [A6 - 0x4]
  408. 000003F6  4EBA 069C                jsr        [PC + 0x69C /* 00000A94 */]
  409. 000003FA  2F0B                     move.l     -[A7], A3
  410. 000003FC  205F                     movea.l    A0, [A7]+
  411. 000003FE  A02A                     syscall    HUnlock
  412. 00000400  4A05                     tst.b      D5
  413. 00000402  548F                     addq.l     A7, 2
  414. 00000404  6708                     beq        +0xA /* 0000040E */
  415. 00000406  2F0B                     move.l     -[A7], A3
  416. 00000408  A9AA                     syscall    ChangedResource
  417. 0000040A  2F0B                     move.l     -[A7], A3
  418. 0000040C  A9B0                     syscall    WriteResource
  419. label0000040E:
  420. 0000040E  4A07                     tst.b      D7
  421. 00000410  6704                     beq        +0x6 /* 00000416 */
  422. 00000412  70FF                     moveq.l    D0, 0xFFFFFFFF
  423. 00000414  6002                     bra        +0x4 /* 00000418 */
  424. label00000416:
  425. 00000416  7000                     moveq.l    D0, 0x00
  426. label00000418:
  427. 00000418  4CEE 18E0 FFE8           movem.l    D5,D6,D7,A3,A4, [A6 - 0x18]
  428. 0000041E  4E5E                     unlink     A6
  429. 00000420  4E75                     rts
  430. fn00000422:
  431. 00000422  4E56 0000                link       A6, 0
  432. 00000426  48E7 0310                movem.l    -[A7], D6,D7,A3
  433. 0000042A  266E 0010                movea.l    A3, [A6 + 0x10]
  434. 0000042E  3C2E 0016                move.w     D6, [A6 + 0x16]
  435. 00000432  2E2E 0008                move.l     D7, [A6 + 0x8]
  436. 00000436  558F                     subq.l     A7, 2
  437. 00000438  2F07                     move.l     -[A7], D7
  438. 0000043A  2F3C 7175 616C           move.l     -[A7], 0x7175616C /* 'qual' */
  439. 00000440  486E 000C                pea.l      [A6 + 0xC]
  440. 00000444  4EBA 0734                jsr        [PC + 0x734 /* 00000B7A */]
  441. 00000448  301F                     move.w     D0, [A7]+
  442. 0000044A  48C0                     ext.l      D0
  443. 0000044C  6704                     beq        +0x6 /* 00000452 */
  444. 0000044E  7000                     moveq.l    D0, 0x00
  445. 00000450  6066                     bra        +0x68 /* 000004B8 */
  446. label00000452:
  447. 00000452  48C6                     ext.l      D6
  448. 00000454  0C86 FFFF FF1F           cmpi.l     D6, 0xFFFFFF1F
  449. 0000045A  6622                     bne        +0x24 /* 0000047E */
  450. 0000045C  558F                     subq.l     A7, 2
  451. 0000045E  2F07                     move.l     -[A7], D7
  452. 00000460  2F3C 7372 6174           move.l     -[A7], 0x73726174 /* 'srat' */
  453. 00000466  2F0B                     move.l     -[A7], A3
  454. 00000468  4EBA 0696                jsr        [PC + 0x696 /* 00000B00 */]
  455. 0000046C  558F                     subq.l     A7, 2
  456. 0000046E  2F07                     move.l     -[A7], D7
  457. 00000470  2F2E 000C                move.l     -[A7], [A6 + 0xC]
  458. 00000474  2F0B                     move.l     -[A7], A3
  459. 00000476  4EBA 0702                jsr        [PC + 0x702 /* 00000B7A */]
  460. 0000047A  3C1F                     move.w     D6, [A7]+
  461. 0000047C  548F                     addq.l     A7, 2
  462. label0000047E:
  463. 0000047E  48C6                     ext.l      D6
  464. 00000480  0C86 FFFF FF21           cmpi.l     D6, 0xFFFFFF21
  465. 00000486  6624                     bne        +0x26 /* 000004AC */
  466. 00000488  558F                     subq.l     A7, 2
  467. 0000048A  2F07                     move.l     -[A7], D7
  468. 0000048C  2F3C 636F 6D70           move.l     -[A7], 0x636F6D70 /* 'comp' */
  469. 00000492  486B 0004                pea.l      [A3 + 0x4]
  470. 00000496  4EBA 0668                jsr        [PC + 0x668 /* 00000B00 */]
  471. 0000049A  558F                     subq.l     A7, 2
  472. 0000049C  2F07                     move.l     -[A7], D7
  473. 0000049E  2F2E 000C                move.l     -[A7], [A6 + 0xC]
  474. 000004A2  2F0B                     move.l     -[A7], A3
  475. 000004A4  4EBA 06D4                jsr        [PC + 0x6D4 /* 00000B7A */]
  476. 000004A8  3C1F                     move.w     D6, [A7]+
  477. 000004AA  548F                     addq.l     A7, 2
  478. label000004AC:
  479. 000004AC  48C6                     ext.l      D6
  480. 000004AE  4A86                     tst.l      D6
  481. 000004B0  6604                     bne        +0x6 /* 000004B6 */
  482. 000004B2  7001                     moveq.l    D0, 0x01
  483. 000004B4  6002                     bra        +0x4 /* 000004B8 */
  484. label000004B6:
  485. 000004B6  7000                     moveq.l    D0, 0x00
  486. label000004B8:
  487. 000004B8  4CEE 08C0 FFF4           movem.l    D6,D7,A3, [A6 - 0xC]
  488. 000004BE  4E5E                     unlink     A6
  489. 000004C0  4E75                     rts
  490. fn000004C2:
  491. 000004C2  225F                     movea.l    A1, [A7]+
  492. 000004C4  301F                     move.w     D0, [A7]+
  493. 000004C6  205F                     movea.l    A0, [A7]+
  494. 000004C8  2050                     movea.l    A0, [A0]
  495. 000004CA  A03D                     syscall    DrvrInstall
  496. 000004CC  3E80                     move.w     [A7], D0
  497. 000004CE  4ED1                     jmp        [A1]
  498. fn000004D0:
  499. 000004D0  225F                     movea.l    A1, [A7]+
  500. 000004D2  301F                     move.w     D0, [A7]+
  501. 000004D4  A03E                     syscall    DrvrRemove
  502. 000004D6  3E80                     move.w     [A7], D0
  503. 000004D8  4ED1                     jmp        [A1]
  504. fn000004DA:
  505. 000004DA  4E56 0000                link       A6, 0
  506. 000004DE  48E7 1F38                movem.l    -[A7], D3,D4,D5,D6,D7,A2,A3,A4
  507. 000004E2  0838 0006 028E           btst.b     [0x0000028E /* ROM85 */], 0x6
  508. 000004E8  6738                     beq        +0x3A /* 00000522 */
  509. label000004EA:
  510. 000004EA  42A7                     clr.l      -[A7]
  511. 000004EC  2F3C 4943 4E23           move.l     -[A7], 0x49434E23 /* 'ICN#' */
  512. 000004F2  3F2E 000A                move.w     -[A7], [A6 + 0xA]
  513. 000004F6  A9A0                     syscall    GetResource
  514. 000004F8  201F                     move.l     D0, [A7]+
  515. 000004FA  671E                     beq        +0x20 /* 0000051A */
  516. 000004FC  2F00                     move.l     -[A7], D0
  517. 000004FE  2040                     movea.l    A0, D0
  518. 00000500  2050                     movea.l    A0, [A0]
  519. 00000502  2F08                     move.l     -[A7], A0
  520. 00000504  3F2E 0008                move.w     -[A7], [A6 + 0x8]
  521. 00000508  6100 010C                bsr        +0x10E /* 00000616 */
  522. 0000050C  A9A3                     syscall    ReleaseResource
  523. label0000050E:
  524. 0000050E  4CDF 1CF8                movem.l    D3,D4,D5,D6,D7,A2,A3,A4, [A7]+
  525. 00000512  4E5E                     unlink     A6
  526. 00000514  205F                     movea.l    A0, [A7]+
  527. 00000516  588F                     addq.l     A7, 4
  528. 00000518  4ED0                     jmp        [A0]
  529. label0000051A:
  530. 0000051A  3F3C 0001                move.w     -[A7], 0x1
  531. 0000051E  A9C8                     syscall    SysBeep
  532. 00000520  60EC                     bra        -0x12 /* 0000050E */
  533. label00000522:
  534. 00000522  2078 08A4                movea.l    A0, [0x000008A4 /* MainDevice */]
  535. 00000526  2050                     movea.l    A0, [A0]
  536. 00000528  2068 0016                movea.l    A0, [A0 + 0x16]
  537. 0000052C  2050                     movea.l    A0, [A0]
  538. 0000052E  0C68 0004 0020           cmpi.w     [A0 + 0x20], 0x4
  539. 00000534  6DB4                     blt        -0x4A /* 000004EA */
  540. 00000536  42A7                     clr.l      -[A7]
  541. 00000538  3F2E 000A                move.w     -[A7], [A6 + 0xA]
  542. 0000053C  AA1E                     syscall    GetCIcon
  543. 0000053E  201F                     move.l     D0, [A7]+
  544. 00000540  67A8                     beq        -0x56 /* 000004EA */
  545. 00000542  2F00                     move.l     -[A7], D0
  546. 00000544  2F00                     move.l     -[A7], D0
  547. 00000546  3F2E 0008                move.w     -[A7], [A6 + 0x8]
  548. 0000054A  6100 014A                bsr        +0x14C /* 00000696 */
  549. 0000054E  AA25                     syscall    DisposeCIcon/DisposCIcon
  550. 00000550  60BC                     bra        -0x42 /* 0000050E */
  551. 00000552  5368 6F77                subq.w     [A0 + 0x6F77], 1
  552. 00000556  494E                     chk.w      D4, A6
  553. 00000558  4954                     chk.w      D4, [A4]
  554. 0000055A  2062                     movea.l    A0, -[A2]
  555. 0000055C  7920                     moveq.l    D4, 0x20
  556. 0000055E  5061                     addq.w     -[A1], 8
  557. 00000560  756C                     moveq.l    D2, 0x6C
  558. 00000562  204D                     movea.l    A0, A5
  559. 00000564  6572                     bcs        +0x74 /* 000005D8 */
  560. 00000566  6365                     bls        +0x67 /* 000005CD */
  561. 00000568  7200                     moveq.l    D1, 0x00
  562. 0000056A  436F 7079                chk.w      D1, [A7 + 0x7079]
  563. 0000056E  7269                     moveq.l    D1, 0x69
  564. 00000570  6768                     beq        +0x6A /* 000005DA */
  565. 00000572  7420                     moveq.l    D2, 0x20
  566. 00000574  3139 3837 2D31           move.w     -[A0], [0x38372D31]
  567. 0000057A  3938 3800                move.w     -[A4], [0x00003800]
  568. 0000057E  5665                     addq.w     -[A5], 3
  569. 00000580  7273                     moveq.l    D1, 0x73
  570. 00000582  696F                     bvs        +0x71 /* 000005F3 */
  571. 00000584  6E20                     bgt        +0x22 /* 000005A6 */
  572. 00000586  6F66                     ble        +0x68 /* 000005EE */
  573. 00000588  2037 2F31 352F 3838      move.l     D0, [[A7 + 0x352F3838 + D2 * 8]]
  574. fn00000590:
  575. 00000590  2D78 0904 FFFC           move.l     [A6 - 0x4], [0x00000904 /* CurrentA5 */]
  576. 00000596  4BEE FFF8                lea.l      A5, [A6 - 0x8]
  577. 0000059A  21CD 0904                move.l     [0x00000904 /* CurrentA5 */], A5
  578. 0000059E  486E FFF4                pea.l      [A6 - 0xC]
  579. 000005A2  A86E                     syscall    InitGraf
  580. 000005A4  486E FEA8                pea.l      [A6 - 0x158]
  581. // begin alternate branch 000005A6-000005AA
  582. label000005A6:
  583. 000005A6  FEA8 A86F                .extension 0xEA8 <<F/2-3/7>> // unimplemented
  584. // end alternate branch 000005A6-000005AA
  585. label000005A6: // (misaligned)
  586. 000005A8  A86F                     syscall    OpenPort
  587. 000005AA  3038 092C                move.w     D0, [0x0000092C]
  588. 000005AE  E358                     rol        D0.w, 1
  589. 000005B0  0A40 1021                xori.w     D0, 0x1021
  590. 000005B4  B078 092E                cmp.w      D0, [0x0000092E]
  591. 000005B8  6706                     beq        +0x8 /* 000005C0 */
  592. 000005BA  31FC 0008 092C           move.w     [0x0000092C], 0x8
  593. label000005C0:
  594. 000005C0  41EE FEA8                lea.l      A0, [A6 - 0x158]
  595. 000005C4  3028 000C                move.w     D0, [A0 + 0xC]
  596. 000005C8  0440 0028                subi.w     D0, 0x28 /* '(' */
  597. 000005CC  4840                     swap.w     D0
  598. 000005CE  3038 092C                move.w     D0, [0x0000092C]
  599. 000005D2  2D40 FF22                move.l     [A6 - 0xDE], D0
  600. 000005D6  2D40 FF26                move.l     [A6 - 0xDA], D0
  601. // begin alternate branch 000005D8-000005DA
  602. label000005D8:
  603. 000005D8  FF26                     .extension 0xF26 <<F/4-5/7>> // unimplemented
  604. // end alternate branch 000005D8-000005DA
  605. label000005D8: // (misaligned)
  606. label000005DA:
  607. 000005DA  066E 0020 FF28           addi.w     [A6 - 0xD8], 0x20 /* ' ' */
  608. 000005E0  066E 0020 FF26           addi.w     [A6 - 0xDA], 0x20 /* ' ' */
  609. 000005E6  4E75                     rts
  610. fn000005E8:
  611. 000005E8  3038 092C                move.w     D0, [0x0000092C]
  612. 000005EC  322E 0008                move.w     D1, [A6 + 0x8]
  613. // begin alternate branch 000005EE-000005F2
  614. label000005EE:
  615. 000005EE  0008 6A04                ori.b      A0, 0x4
  616. // end alternate branch 000005EE-000005F2
  617. label000005EE: // (misaligned)
  618. 000005F0  6A04                     bpl        +0x6 /* 000005F6 */
  619. 000005F2  323C 0028                move.w     D1, 0x28 /* '(' */
  620. label000005F6:
  621. 000005F6  D041                     add.w      D0, D1
  622. 000005F8  31C0 092C                move.w     [0x0000092C], D0
  623. 000005FC  E358                     rol        D0.w, 1
  624. 000005FE  0A40 1021                xori.w     D0, 0x1021
  625. 00000602  31C0 092E                move.w     [0x0000092E], D0
  626. 00000606  486E FEA8                pea.l      [A6 - 0x158]
  627. 0000060A  A87D                     syscall    ClosePort
  628. 0000060C  2A6E FFFC                movea.l    A5, [A6 - 0x4]
  629. 00000610  21CD 0904                move.l     [0x00000904 /* CurrentA5 */], A5
  630. 00000614  4E75                     rts
  631. fn00000616:
  632. 00000616  4E56 FEA8                link       A6, -0x0158
  633. 0000061A  48E7 1F38                movem.l    -[A7], D3,D4,D5,D6,D7,A2,A3,A4
  634. 0000061E  6100 FF70                bsr        -0x8E /* 00000590 */
  635. 00000622  266E 000A                movea.l    A3, [A6 + 0xA]
  636. 00000626  49EE FF14                lea.l      A4, [A6 - 0xEC]
  637. 0000062A  288B                     move.l     [A4], A3
  638. 0000062C  0694 0000 0080           addi.l     [A4], 0x80
  639. 00000632  397C 0004 0004           move.w     [A4 + 0x4], 0x4
  640. 00000638  42AC 0006                clr.l      [A4 + 0x6]
  641. 0000063C  397C 0020 000A           move.w     [A4 + 0xA], 0x20 /* ' ' */
  642. 00000642  397C 0020 000C           move.w     [A4 + 0xC], 0x20 /* ' ' */
  643. 00000648  2F0C                     move.l     -[A7], A4
  644. 0000064A  45EE FEA8                lea.l      A2, [A6 - 0x158]
  645. 0000064E  486A 0002                pea.l      [A2 + 0x2]
  646. 00000652  487A 003A                pea.l      [PC + 0x3A /* 0000068E, value 0x0, cstring "" */]
  647. 00000656  486E FF22                pea.l      [A6 - 0xDE]
  648. 0000065A  3F3C 0003                move.w     -[A7], 0x3
  649. 0000065E  42A7                     clr.l      -[A7]
  650. 00000660  A8EC                     syscall    CopyBits
  651. 00000662  0494 0000 0080           subi.l     [A4], 0x80
  652. 00000668  2F0C                     move.l     -[A7], A4
  653. 0000066A  486A 0002                pea.l      [A2 + 0x2]
  654. 0000066E  487A 001E                pea.l      [PC + 0x1E /* 0000068E, value 0x0, cstring "" */]
  655. 00000672  486E FF22                pea.l      [A6 - 0xDE]
  656. 00000676  3F3C 0001                move.w     -[A7], 0x1
  657. 0000067A  42A7                     clr.l      -[A7]
  658. 0000067C  A8EC                     syscall    CopyBits
  659. 0000067E  6100 FF68                bsr        -0x96 /* 000005E8 */
  660. 00000682  4CDF 1CF8                movem.l    D3,D4,D5,D6,D7,A2,A3,A4, [A7]+
  661. 00000686  4E5E                     unlink     A6
  662. 00000688  205F                     movea.l    A0, [A7]+
  663. 0000068A  5C8F                     addq.l     A7, 6
  664. 0000068C  4ED0                     jmp        [A0]
  665. 0000068E  0000 0000                ori.b      D0, 0x0
  666. 00000692  0020 0020                ori.b      -[A0], 0x20 /* ' ' */
  667. fn00000696:
  668. 00000696  4E56 FEA8                link       A6, -0x0158
  669. 0000069A  48E7 1F38                movem.l    -[A7], D3,D4,D5,D6,D7,A2,A3,A4
  670. 0000069E  6100 FEF0                bsr        -0x10E /* 00000590 */
  671. 000006A2  486E FF22                pea.l      [A6 - 0xDE]
  672. 000006A6  2F2E 000A                move.l     -[A7], [A6 + 0xA]
  673. 000006AA  AA1F                     syscall    PlotCIcon
  674. 000006AC  6100 FF3A                bsr        -0xC4 /* 000005E8 */
  675. 000006B0  4CDF 1CF8                movem.l    D3,D4,D5,D6,D7,A2,A3,A4, [A7]+
  676. 000006B4  4E5E                     unlink     A6
  677. 000006B6  205F                     movea.l    A0, [A7]+
  678. 000006B8  5C8F                     addq.l     A7, 6
  679. 000006BA  4ED0                     jmp        [A0]
  680. fn000006BC:
  681. 000006BC  4E56 FEFA                link       A6, -0x0106
  682. 000006C0  48E7 0F18                movem.l    -[A7], D4,D5,D6,D7,A3,A4
  683. 000006C4  286E 000C                movea.l    A4, [A6 + 0xC]
  684. 000006C8  47EE FEFE                lea.l      A3, [A6 - 0x102]
  685. 000006CC  3E2E 0010                move.w     D7, [A6 + 0x10]
  686. 000006D0  3A3C FF23                move.w     D5, 0xFF23
  687. 000006D4  4246                     clr.w      D6
  688. 000006D6  7001                     moveq.l    D0, 0x01
  689. 000006D8  2F00                     move.l     -[A7], D0
  690. 000006DA  2F3C 0000 A800           move.l     -[A7], 0xA800
  691. 000006E0  4EBA 0724                jsr        [PC + 0x724 /* 00000E06 */]
  692. 000006E4  4A00                     tst.b      D0
  693. 000006E6  508F                     addq.l     A7, 8
  694. 000006E8  671A                     beq        +0x1C /* 00000704 */
  695. 000006EA  558F                     subq.l     A7, 2
  696. 000006EC  3F07                     move.w     -[A7], D7
  697. 000006EE  2F0C                     move.l     -[A7], A4
  698. 000006F0  2F2E 0008                move.l     -[A7], [A6 + 0x8]
  699. 000006F4  203C 0514 0014           move.l     D0, 0x5140014
  700. 000006FA  A800                     syscall    SoundDispatch
  701. 000006FC  3D5F 0012                move.w     [A6 + 0x12], [A7]+
  702. 00000700  6000 01AE                bra        +0x1B0 /* 000008B0 */
  703. label00000704:
  704. 00000704  48C7                     ext.l      D7
  705. 00000706  4A87                     tst.l      D7
  706. 00000708  6D08                     blt        +0xA /* 00000712 */
  707. 0000070A  48C7                     ext.l      D7
  708. 0000070C  7003                     moveq.l    D0, 0x03
  709. 0000070E  B087                     cmp.l      D0, D7
  710. 00000710  6C08                     bge        +0xA /* 0000071A */
  711. label00000712:
  712. 00000712  3D45 0012                move.w     [A6 + 0x12], D5
  713. 00000716  6000 0198                bra        +0x19A /* 000008B0 */
  714. label0000071A:
  715. 0000071A  558F                     subq.l     A7, 2
  716. 0000071C  A994                     syscall    CurResFile
  717. 0000071E  3D5F FFFE                move.w     [A6 - 0x2], [A7]+
  718. 00000722  558F                     subq.l     A7, 2
  719. 00000724  7001                     moveq.l    D0, 0x01
  720. 00000726  3F00                     move.w     -[A7], D0
  721. 00000728  4EBA 08CA                jsr        [PC + 0x8CA /* 00000FF4 */]
  722. 0000072C  381F                     move.w     D4, [A7]+
  723. 0000072E  3004                     move.w     D0, D4
  724. 00000730  48C0                     ext.l      D0
  725. 00000732  72FF                     moveq.l    D1, 0xFFFFFFFF
  726. 00000734  B280                     cmp.l      D1, D0
  727. 00000736  660C                     bne        +0xE /* 00000744 */
  728. 00000738  558F                     subq.l     A7, 2
  729. 0000073A  A9AF                     syscall    ResError
  730. 0000073C  3D5F 0012                move.w     [A6 + 0x12], [A7]+
  731. 00000740  6000 016E                bra        +0x170 /* 000008B0 */
  732. label00000744:
  733. 00000744  48C7                     ext.l      D7
  734. 00000746  4A87                     tst.l      D7
  735. 00000748  6600 014A                bne        +0x14C /* 00000894 */
  736. 0000074C  598F                     subq.l     A7, 4
  737. 0000074E  2F3C 4153 494D           move.l     -[A7], 0x4153494D /* 'ASIM' */
  738. 00000754  3F3C F020                move.w     -[A7], 0xF020
  739. 00000758  A81F                     syscall    Get1Resource
  740. 0000075A  2D5F FEFA                move.l     [A6 - 0x106], [A7]+
  741. 0000075E  6618                     bne        +0x1A /* 00000778 */
  742. 00000760  558F                     subq.l     A7, 2
  743. 00000762  A9AF                     syscall    ResError
  744. 00000764  3A1F                     move.w     D5, [A7]+
  745. 00000766  3F2E FFFE                move.w     -[A7], [A6 - 0x2]
  746. 0000076A  A998                     syscall    UseResFile
  747. 0000076C  3F04                     move.w     -[A7], D4
  748. 0000076E  A99A                     syscall    CloseResFile
  749. 00000770  3D45 0012                move.w     [A6 + 0x12], D5
  750. 00000774  6000 013A                bra        +0x13C /* 000008B0 */
  751. label00000778:
  752. 00000778  2F2E FEFA                move.l     -[A7], [A6 - 0x106]
  753. 0000077C  205F                     movea.l    A0, [A7]+
  754. 0000077E  A029                     syscall    HLock
  755. 00000780  7E01                     moveq.l    D7, 0x01
  756. 00000782  6028                     bra        +0x2A /* 000007AC */
  757. label00000784:
  758. 00000784  2F0B                     move.l     -[A7], A3
  759. 00000786  3F3C F020                move.w     -[A7], 0xF020
  760. 0000078A  3F07                     move.w     -[A7], D7
  761. 0000078C  4EBA 0D08                jsr        [PC + 0xD08 /* 00001496 */]
  762. 00000790  558F                     subq.l     A7, 2
  763. 00000792  2F0B                     move.l     -[A7], A3
  764. 00000794  206E FEFA                movea.l    A0, [A6 - 0x106]
  765. 00000798  2F10                     move.l     -[A7], [A0]
  766. 0000079A  7001                     moveq.l    D0, 0x01
  767. 0000079C  1F00                     move.b     -[A7], D0
  768. 0000079E  1F00                     move.b     -[A7], D0
  769. 000007A0  4EBA 0954                jsr        [PC + 0x954 /* 000010F6 */]
  770. 000007A4  4A1F                     tst.b      [A7]+
  771. 000007A6  660C                     bne        +0xE /* 000007B4 */
  772. 000007A8  3007                     move.w     D0, D7
  773. 000007AA  5247                     addq.w     D7, 1
  774. label000007AC:
  775. 000007AC  48C7                     ext.l      D7
  776. 000007AE  7003                     moveq.l    D0, 0x03
  777. 000007B0  B087                     cmp.l      D0, D7
  778. 000007B2  6CD0                     bge        -0x2E /* 00000784 */
  779. label000007B4:
  780. 000007B4  2F2E FEFA                move.l     -[A7], [A6 - 0x106]
  781. 000007B8  205F                     movea.l    A0, [A7]+
  782. 000007BA  A02A                     syscall    HUnlock
  783. 000007BC  2F2E FEFA                move.l     -[A7], [A6 - 0x106]
  784. 000007C0  A9A3                     syscall    ReleaseResource
  785. 000007C2  48C7                     ext.l      D7
  786. 000007C4  7003                     moveq.l    D0, 0x03
  787. 000007C6  B087                     cmp.l      D0, D7
  788. 000007C8  6C14                     bge        +0x16 /* 000007DE */
  789. 000007CA  3F2E FFFE                move.w     -[A7], [A6 - 0x2]
  790. 000007CE  A998                     syscall    UseResFile
  791. 000007D0  3F04                     move.w     -[A7], D4
  792. 000007D2  A99A                     syscall    CloseResFile
  793. 000007D4  3D7C FF23 0012           move.w     [A6 + 0x12], 0xFF23
  794. 000007DA  6000 00D4                bra        +0xD6 /* 000008B0 */
  795. label000007DE:
  796. 000007DE  2F0B                     move.l     -[A7], A3
  797. 000007E0  4EBA 04B2                jsr        [PC + 0x4B2 /* 00000C94 */]
  798. 000007E4  3C00                     move.w     D6, D0
  799. 000007E6  48C0                     ext.l      D0
  800. 000007E8  588F                     addq.l     A7, 4
  801. 000007EA  6744                     beq        +0x46 /* 00000830 */
  802. 000007EC  200C                     move.l     D0, A4
  803. 000007EE  670C                     beq        +0xE /* 000007FC */
  804. 000007F0  2F0C                     move.l     -[A7], A4
  805. 000007F2  3F3C F024                move.w     -[A7], 0xF024
  806. 000007F6  3F07                     move.w     -[A7], D7
  807. 000007F8  4EBA 0C9C                jsr        [PC + 0xC9C /* 00001496 */]
  808. label000007FC:
  809. 000007FC  4AAE 0008                tst.l      [A6 + 0x8]
  810. 00000800  671C                     beq        +0x1E /* 0000081E */
  811. 00000802  598F                     subq.l     A7, 4
  812. 00000804  2F3C 4943 4E23           move.l     -[A7], 0x49434E23 /* 'ICN#' */
  813. 0000080A  48C7                     ext.l      D7
  814. 0000080C  2007                     move.l     D0, D7
  815. 0000080E  D0BC FFFF F021           add.l      D0, 0xFFFFF021
  816. 00000814  3F00                     move.w     -[A7], D0
  817. 00000816  A81F                     syscall    Get1Resource
  818. 00000818  206E 0008                movea.l    A0, [A6 + 0x8]
  819. 0000081C  209F                     move.l     [A0], [A7]+
  820. label0000081E:
  821. 0000081E  3F2E FFFE                move.w     -[A7], [A6 - 0x2]
  822. 00000822  A998                     syscall    UseResFile
  823. 00000824  3F04                     move.w     -[A7], D4
  824. 00000826  A99A                     syscall    CloseResFile
  825. 00000828  426E 0012                clr.w      [A6 + 0x12]
  826. 0000082C  6000 0082                bra        +0x84 /* 000008B0 */
  827. label00000830:
  828. 00000830  3F2E FFFE                move.w     -[A7], [A6 - 0x2]
  829. 00000834  A998                     syscall    UseResFile
  830. 00000836  3F04                     move.w     -[A7], D4
  831. 00000838  A99A                     syscall    CloseResFile
  832. 0000083A  3D7C FF23 0012           move.w     [A6 + 0x12], 0xFF23
  833. 00000840  606E                     bra        +0x70 /* 000008B0 */
  834. label00000842:
  835. 00000842  2F0B                     move.l     -[A7], A3
  836. 00000844  3F3C F020                move.w     -[A7], 0xF020
  837. 00000848  3F07                     move.w     -[A7], D7
  838. 0000084A  4EBA 0C4A                jsr        [PC + 0xC4A /* 00001496 */]
  839. 0000084E  2F0B                     move.l     -[A7], A3
  840. 00000850  4EBA 0442                jsr        [PC + 0x442 /* 00000C94 */]
  841. 00000854  3C00                     move.w     D6, D0
  842. 00000856  48C0                     ext.l      D0
  843. 00000858  588F                     addq.l     A7, 4
  844. 0000085A  6734                     beq        +0x36 /* 00000890 */
  845. 0000085C  200C                     move.l     D0, A4
  846. 0000085E  670C                     beq        +0xE /* 0000086C */
  847. 00000860  2F0C                     move.l     -[A7], A4
  848. 00000862  3F3C F024                move.w     -[A7], 0xF024
  849. 00000866  3F07                     move.w     -[A7], D7
  850. 00000868  4EBA 0C2C                jsr        [PC + 0xC2C /* 00001496 */]
  851. label0000086C:
  852. 0000086C  4AAE 0008                tst.l      [A6 + 0x8]
  853. 00000870  671C                     beq        +0x1E /* 0000088E */
  854. 00000872  598F                     subq.l     A7, 4
  855. 00000874  2F3C 4943 4E23           move.l     -[A7], 0x49434E23 /* 'ICN#' */
  856. 0000087A  48C7                     ext.l      D7
  857. 0000087C  2007                     move.l     D0, D7
  858. 0000087E  D0BC FFFF F021           add.l      D0, 0xFFFFF021
  859. 00000884  3F00                     move.w     -[A7], D0
  860. 00000886  A81F                     syscall    Get1Resource
  861. 00000888  206E 0008                movea.l    A0, [A6 + 0x8]
  862. 0000088C  209F                     move.l     [A0], [A7]+
  863. label0000088E:
  864. 0000088E  4245                     clr.w      D5
  865. label00000890:
  866. 00000890  3007                     move.w     D0, D7
  867. 00000892  5247                     addq.w     D7, 1
  868. label00000894:
  869. 00000894  48C6                     ext.l      D6
  870. 00000896  4A86                     tst.l      D6
  871. 00000898  6608                     bne        +0xA /* 000008A2 */
  872. 0000089A  48C7                     ext.l      D7
  873. 0000089C  7003                     moveq.l    D0, 0x03
  874. 0000089E  B087                     cmp.l      D0, D7
  875. 000008A0  6CA0                     bge        -0x5E /* 00000842 */
  876. label000008A2:
  877. 000008A2  3F2E FFFE                move.w     -[A7], [A6 - 0x2]
  878. 000008A6  A998                     syscall    UseResFile
  879. 000008A8  3F04                     move.w     -[A7], D4
  880. 000008AA  A99A                     syscall    CloseResFile
  881. 000008AC  3D45 0012                move.w     [A6 + 0x12], D5
  882. label000008B0:
  883. 000008B0  4CEE 18F0 FEE2           movem.l    D4,D5,D6,D7,A3,A4, [A6 - 0x11E]
  884. 000008B6  4E5E                     unlink     A6
  885. 000008B8  205F                     movea.l    A0, [A7]+
  886. 000008BA  DEFC 000A                add.w      A7, 0xA /* '\n' */
  887. 000008BE  4ED0                     jmp        [A0]
  888. 000008C0  8841                     or.w       D4, D1
  889. 000008C2  5349                     subq.w     A1, 1
  890. 000008C4  5350                     subq.w     [A0], 1
  891. 000008C6  4247                     clr.w      D7
  892. 000008C8  4500                     .invalid   2, D0 // invalid opcode 4 with b == 4
  893. 000008CA  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  894. // begin alternate branch 000008CC-000008D4
  895. fn000008CC:
  896. 000008CC  4E56 FE00                link       A6, -0x0200
  897. 000008D0  48E7 0F18                movem.l    -[A7], D4,D5,D6,D7,A3,A4
  898. // end alternate branch 000008CC-000008D4
  899. fn000008CC: // (misaligned)
  900. 000008CE  FE00 48E7                .unknown   0xFE00 0x48E7 (W = 7)
  901. 000008D2  0F18                     btst       [A0]+, D7
  902. 000008D4  3C2E 000C                move.w     D6, [A6 + 0xC]
  903. 000008D8  49EE FF00                lea.l      A4, [A6 - 0x100]
  904. 000008DC  7001                     moveq.l    D0, 0x01
  905. 000008DE  2F00                     move.l     -[A7], D0
  906. 000008E0  2F3C 0000 A800           move.l     -[A7], 0xA800
  907. 000008E6  4EBA 051E                jsr        [PC + 0x51E /* 00000E06 */]
  908. 000008EA  4A00                     tst.b      D0
  909. 000008EC  508F                     addq.l     A7, 8
  910. 000008EE  671C                     beq        +0x1E /* 0000090C */
  911. 000008F0  558F                     subq.l     A7, 2
  912. 000008F2  2F2E 000E                move.l     -[A7], [A6 + 0xE]
  913. 000008F6  3F06                     move.w     -[A7], D6
  914. 000008F8  2F2E 0008                move.l     -[A7], [A6 + 0x8]
  915. 000008FC  203C 0518 0014           move.l     D0, 0x5180014
  916. 00000902  A800                     syscall    SoundDispatch
  917. 00000904  3D5F 0012                move.w     [A6 + 0x12], [A7]+
  918. 00000908  6000 016E                bra        +0x170 /* 00000A78 */
  919. label0000090C:
  920. 0000090C  4AAE 000E                tst.l      [A6 + 0xE]
  921. 00000910  670A                     beq        +0xC /* 0000091C */
  922. 00000912  206E 000E                movea.l    A0, [A6 + 0xE]
  923. 00000916  7000                     moveq.l    D0, 0x00
  924. 00000918  1010                     move.b     D0, [A0]
  925. 0000091A  6622                     bne        +0x24 /* 0000093E */
  926. label0000091C:
  927. 0000091C  558F                     subq.l     A7, 2
  928. 0000091E  7000                     moveq.l    D0, 0x00
  929. 00000920  3F00                     move.w     -[A7], D0
  930. 00000922  486E FE00                pea.l      [A6 - 0x200]
  931. 00000926  7200                     moveq.l    D1, 0x00
  932. 00000928  2F01                     move.l     -[A7], D1
  933. 0000092A  4EBA FD90                jsr        [PC - 0x270 /* 000006BC */]
  934. 0000092E  381F                     move.w     D4, [A7]+
  935. 00000930  3004                     move.w     D0, D4
  936. 00000932  48C0                     ext.l      D0
  937. 00000934  6716                     beq        +0x18 /* 0000094C */
  938. 00000936  3D44 0012                move.w     [A6 + 0x12], D4
  939. 0000093A  6000 013C                bra        +0x13E /* 00000A78 */
  940. label0000093E:
  941. 0000093E  2F2E 000E                move.l     -[A7], [A6 + 0xE]
  942. 00000942  486E FE00                pea.l      [A6 - 0x200]
  943. 00000946  4EBA 0486                jsr        [PC + 0x486 /* 00000DCE */]
  944. 0000094A  508F                     addq.l     A7, 8
  945. label0000094C:
  946. 0000094C  558F                     subq.l     A7, 2
  947. 0000094E  A994                     syscall    CurResFile
  948. 00000950  3A1F                     move.w     D5, [A7]+
  949. 00000952  558F                     subq.l     A7, 2
  950. 00000954  7001                     moveq.l    D0, 0x01
  951. 00000956  3F00                     move.w     -[A7], D0
  952. 00000958  4EBA 069A                jsr        [PC + 0x69A /* 00000FF4 */]
  953. 0000095C  381F                     move.w     D4, [A7]+
  954. 0000095E  3004                     move.w     D0, D4
  955. 00000960  48C0                     ext.l      D0
  956. 00000962  72FF                     moveq.l    D1, 0xFFFFFFFF
  957. 00000964  B280                     cmp.l      D1, D0
  958. 00000966  660C                     bne        +0xE /* 00000974 */
  959. 00000968  558F                     subq.l     A7, 2
  960. 0000096A  A9AF                     syscall    ResError
  961. 0000096C  3D5F 0012                move.w     [A6 + 0x12], [A7]+
  962. 00000970  6000 0106                bra        +0x108 /* 00000A78 */
  963. label00000974:
  964. 00000974  7E01                     moveq.l    D7, 0x01
  965. 00000976  6026                     bra        +0x28 /* 0000099E */
  966. label00000978:
  967. 00000978  2F0C                     move.l     -[A7], A4
  968. 0000097A  3F3C F024                move.w     -[A7], 0xF024
  969. 0000097E  3F07                     move.w     -[A7], D7
  970. 00000980  4EBA 0B14                jsr        [PC + 0xB14 /* 00001496 */]
  971. 00000984  558F                     subq.l     A7, 2
  972. 00000986  2F0C                     move.l     -[A7], A4
  973. 00000988  486E FE00                pea.l      [A6 - 0x200]
  974. 0000098C  7001                     moveq.l    D0, 0x01
  975. 0000098E  1F00                     move.b     -[A7], D0
  976. 00000990  1F00                     move.b     -[A7], D0
  977. 00000992  4EBA 0762                jsr        [PC + 0x762 /* 000010F6 */]
  978. 00000996  4A1F                     tst.b      [A7]+
  979. 00000998  660C                     bne        +0xE /* 000009A6 */
  980. 0000099A  3007                     move.w     D0, D7
  981. 0000099C  5247                     addq.w     D7, 1
  982. label0000099E:
  983. 0000099E  48C7                     ext.l      D7
  984. 000009A0  7003                     moveq.l    D0, 0x03
  985. 000009A2  B087                     cmp.l      D0, D7
  986. 000009A4  6CD2                     bge        -0x2C /* 00000978 */
  987. label000009A6:
  988. 000009A6  2F0C                     move.l     -[A7], A4
  989. 000009A8  3F3C F020                move.w     -[A7], 0xF020
  990. 000009AC  3F07                     move.w     -[A7], D7
  991. 000009AE  4EBA 0AE6                jsr        [PC + 0xAE6 /* 00001496 */]
  992. 000009B2  3F05                     move.w     -[A7], D5
  993. 000009B4  A998                     syscall    UseResFile
  994. 000009B6  3F04                     move.w     -[A7], D4
  995. 000009B8  A99A                     syscall    CloseResFile
  996. 000009BA  48C7                     ext.l      D7
  997. 000009BC  7003                     moveq.l    D0, 0x03
  998. 000009BE  B087                     cmp.l      D0, D7
  999. 000009C0  6C0A                     bge        +0xC /* 000009CC */
  1000. 000009C2  3D7C FF23 0012           move.w     [A6 + 0x12], 0xFF23
  1001. 000009C8  6000 00AE                bra        +0xB0 /* 00000A78 */
  1002. label000009CC:
  1003. 000009CC  2F0C                     move.l     -[A7], A4
  1004. 000009CE  4EBA 02C4                jsr        [PC + 0x2C4 /* 00000C94 */]
  1005. 000009D2  3A00                     move.w     D5, D0
  1006. 000009D4  48C0                     ext.l      D0
  1007. 000009D6  588F                     addq.l     A7, 4
  1008. 000009D8  6700 0098                beq        +0x9A /* 00000A72 */
  1009. 000009DC  48C6                     ext.l      D6
  1010. 000009DE  0806 0000                btst.b     D6, 0x0
  1011. 000009E2  674E                     beq        +0x50 /* 00000A32 */
  1012. 000009E4  598F                     subq.l     A7, 4
  1013. 000009E6  3F05                     move.w     -[A7], D5
  1014. 000009E8  4EBA 074C                jsr        [PC + 0x74C /* 00001136 */]
  1015. 000009EC  285F                     movea.l    A4, [A7]+
  1016. 000009EE  200C                     move.l     D0, A4
  1017. 000009F0  6608                     bne        +0xA /* 000009FA */
  1018. 000009F2  3D7C FF1C 0012           move.w     [A6 + 0x12], 0xFF1C
  1019. 000009F8  607E                     bra        +0x80 /* 00000A78 */
  1020. label000009FA:
  1021. 000009FA  2054                     movea.l    A0, [A4]
  1022. 000009FC  2668 0008                movea.l    A3, [A0 + 0x8]
  1023. 00000A00  6020                     bra        +0x22 /* 00000A22 */
  1024. label00000A02:
  1025. 00000A02  302B 0006                move.w     D0, [A3 + 0x6]
  1026. 00000A06  48C0                     ext.l      D0
  1027. 00000A08  223C 0000 F9FF           move.l     D1, 0xF9FF
  1028. 00000A0E  C280                     and.l      D1, D0
  1029. 00000A10  0C81 0000 A002           cmpi.l     D1, 0xA002
  1030. 00000A16  6608                     bne        +0xA /* 00000A20 */
  1031. 00000A18  3D7C FF1D 0012           move.w     [A6 + 0x12], 0xFF1D
  1032. 00000A1E  6058                     bra        +0x5A /* 00000A78 */
  1033. label00000A20:
  1034. 00000A20  2653                     movea.l    A3, [A3]
  1035. label00000A22:
  1036. 00000A22  200B                     move.l     D0, A3
  1037. 00000A24  670C                     beq        +0xE /* 00000A32 */
  1038. 00000A26  302B 0004                move.w     D0, [A3 + 0x4]
  1039. 00000A2A  48C0                     ext.l      D0
  1040. 00000A2C  7202                     moveq.l    D1, 0x02
  1041. 00000A2E  B280                     cmp.l      D1, D0
  1042. 00000A30  67D0                     beq        -0x2E /* 00000A02 */
  1043. label00000A32:
  1044. 00000A32  48C6                     ext.l      D6
  1045. 00000A34  7010                     moveq.l    D0, 0x10
  1046. 00000A36  2206                     move.l     D1, D6
  1047. 00000A38  E1A9                     lsl        D1, D0
  1048. 00000A3A  48C5                     ext.l      D5
  1049. 00000A3C  203C 0000 FFFF           move.l     D0, 0xFFFF
  1050. 00000A42  C085                     and.l      D0, D5
  1051. 00000A44  8081                     or.l       D0, D1
  1052. 00000A46  206E 0008                movea.l    A0, [A6 + 0x8]
  1053. 00000A4A  2080                     move.l     [A0], D0
  1054. 00000A4C  48C6                     ext.l      D6
  1055. 00000A4E  0806 0000                btst.b     D6, 0x0
  1056. 00000A52  6718                     beq        +0x1A /* 00000A6C */
  1057. 00000A54  558F                     subq.l     A7, 2
  1058. 00000A56  206E 0008                movea.l    A0, [A6 + 0x8]
  1059. 00000A5A  2F10                     move.l     -[A7], [A0]
  1060. 00000A5C  2F3C 696E 6974           move.l     -[A7], 0x696E6974 /* 'init' */
  1061. 00000A62  7000                     moveq.l    D0, 0x00
  1062. 00000A64  2F00                     move.l     -[A7], D0
  1063. 00000A66  4EBA 0112                jsr        [PC + 0x112 /* 00000B7A */]
  1064. 00000A6A  548F                     addq.l     A7, 2
  1065. label00000A6C:
  1066. 00000A6C  426E 0012                clr.w      [A6 + 0x12]
  1067. 00000A70  6006                     bra        +0x8 /* 00000A78 */
  1068. label00000A72:
  1069. 00000A72  3D7C FF1C 0012           move.w     [A6 + 0x12], 0xFF1C
  1070. label00000A78:
  1071. 00000A78  4CEE 18F0 FDE8           movem.l    D4,D5,D6,D7,A3,A4, [A6 - 0x218]
  1072. 00000A7E  4E5E                     unlink     A6
  1073. 00000A80  205F                     movea.l    A0, [A7]+
  1074. 00000A82  DEFC 000A                add.w      A7, 0xA /* '\n' */
  1075. 00000A86  4ED0                     jmp        [A0]
  1076. 00000A88  8841                     or.w       D4, D1
  1077. 00000A8A  5349                     subq.w     A1, 1
  1078. 00000A8C  5350                     subq.w     [A0], 1
  1079. 00000A8E  424F                     clr.w      A7
  1080. 00000A90  5000                     addq.b     D0, 8
  1081. 00000A92  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  1082. // begin alternate branch 00000A94-00000A9A
  1083. fn00000A94:
  1084. 00000A94  4E56 0000                link       A6, 0
  1085. 00000A98  2F07                     move.l     -[A7], D7
  1086. // end alternate branch 00000A94-00000A9A
  1087. fn00000A94: // (misaligned)
  1088. 00000A96  0000 2F07                ori.b      D0, 0x7
  1089. 00000A9A  2E2E 0008                move.l     D7, [A6 + 0x8]
  1090. 00000A9E  7001                     moveq.l    D0, 0x01
  1091. 00000AA0  2F00                     move.l     -[A7], D0
  1092. 00000AA2  2F3C 0000 A800           move.l     -[A7], 0xA800
  1093. 00000AA8  4EBA 035C                jsr        [PC + 0x35C /* 00000E06 */]
  1094. 00000AAC  4A00                     tst.b      D0
  1095. 00000AAE  508F                     addq.l     A7, 8
  1096. 00000AB0  6712                     beq        +0x14 /* 00000AC4 */
  1097. 00000AB2  558F                     subq.l     A7, 2
  1098. 00000AB4  2F07                     move.l     -[A7], D7
  1099. 00000AB6  203C 021C 0014           move.l     D0, 0x21C0014
  1100. 00000ABC  A800                     syscall    SoundDispatch
  1101. 00000ABE  3D5F 000C                move.w     [A6 + 0xC], [A7]+
  1102. 00000AC2  6026                     bra        +0x28 /* 00000AEA */
  1103. label00000AC4:
  1104. 00000AC4  7010                     moveq.l    D0, 0x10
  1105. 00000AC6  2207                     move.l     D1, D7
  1106. 00000AC8  E0A1                     asr        D1, D0
  1107. 00000ACA  48C1                     ext.l      D1
  1108. 00000ACC  0801 0000                btst.b     D1, 0x0
  1109. 00000AD0  6714                     beq        +0x16 /* 00000AE6 */
  1110. 00000AD2  558F                     subq.l     A7, 2
  1111. 00000AD4  2F07                     move.l     -[A7], D7
  1112. 00000AD6  2F3C 636C 6F73           move.l     -[A7], 0x636C6F73 /* 'clos' */
  1113. 00000ADC  7000                     moveq.l    D0, 0x00
  1114. 00000ADE  2F00                     move.l     -[A7], D0
  1115. 00000AE0  4EBA 0098                jsr        [PC + 0x98 /* 00000B7A */]
  1116. 00000AE4  548F                     addq.l     A7, 2
  1117. label00000AE6:
  1118. 00000AE6  426E 000C                clr.w      [A6 + 0xC]
  1119. label00000AEA:
  1120. 00000AEA  2E2E FFFC                move.l     D7, [A6 - 0x4]
  1121. 00000AEE  4E5E                     unlink     A6
  1122. 00000AF0  2E9F                     move.l     [A7], [A7]+
  1123. 00000AF2  4E75                     rts
  1124. 00000AF4  8841                     or.w       D4, D1
  1125. 00000AF6  5349                     subq.w     A1, 1
  1126. 00000AF8  5350                     subq.w     [A0], 1
  1127. 00000AFA  4243                     clr.w      D3
  1128. 00000AFC  4C00 0000                movem.w    <none>, D0
  1129. fn00000B00:
  1130. 00000B00  4E56 0000                link       A6, 0
  1131. 00000B04  48E7 0310                movem.l    -[A7], D6,D7,A3
  1132. 00000B08  266E 0008                movea.l    A3, [A6 + 0x8]
  1133. 00000B0C  2C2E 000C                move.l     D6, [A6 + 0xC]
  1134. 00000B10  2E2E 0010                move.l     D7, [A6 + 0x10]
  1135. 00000B14  7001                     moveq.l    D0, 0x01
  1136. 00000B16  2F00                     move.l     -[A7], D0
  1137. 00000B18  2F3C 0000 A800           move.l     -[A7], 0xA800
  1138. 00000B1E  4EBA 02E6                jsr        [PC + 0x2E6 /* 00000E06 */]
  1139. 00000B22  4A00                     tst.b      D0
  1140. 00000B24  508F                     addq.l     A7, 8
  1141. 00000B26  6716                     beq        +0x18 /* 00000B3E */
  1142. 00000B28  558F                     subq.l     A7, 2
  1143. 00000B2A  2F07                     move.l     -[A7], D7
  1144. 00000B2C  2F06                     move.l     -[A7], D6
  1145. 00000B2E  2F0B                     move.l     -[A7], A3
  1146. 00000B30  203C 0638 0014           move.l     D0, 0x6380014
  1147. 00000B36  A800                     syscall    SoundDispatch
  1148. 00000B38  3D5F 0014                move.w     [A6 + 0x14], [A7]+
  1149. 00000B3C  6020                     bra        +0x22 /* 00000B5E */
  1150. label00000B3E:
  1151. 00000B3E  7000                     moveq.l    D0, 0x00
  1152. 00000B40  2F00                     move.l     -[A7], D0
  1153. 00000B42  2F0B                     move.l     -[A7], A3
  1154. 00000B44  2F06                     move.l     -[A7], D6
  1155. 00000B46  223C 0000 FFFF           move.l     D1, 0xFFFF
  1156. 00000B4C  C287                     and.l      D1, D7
  1157. 00000B4E  48C1                     ext.l      D1
  1158. 00000B50  2F01                     move.l     -[A7], D1
  1159. 00000B52  4EBA 01D0                jsr        [PC + 0x1D0 /* 00000D24 */]
  1160. 00000B56  3D40 0014                move.w     [A6 + 0x14], D0
  1161. 00000B5A  4FEF 0010                lea.l      A7, [A7 + 0x10]
  1162. label00000B5E:
  1163. 00000B5E  4CEE 08C0 FFF4           movem.l    D6,D7,A3, [A6 - 0xC]
  1164. 00000B64  4E5E                     unlink     A6
  1165. 00000B66  205F                     movea.l    A0, [A7]+
  1166. 00000B68  DEFC 000C                add.w      A7, 0xC
  1167. 00000B6C  4ED0                     jmp        [A0]
  1168. 00000B6E  8841                     or.w       D4, D1
  1169. 00000B70  5349                     subq.w     A1, 1
  1170. 00000B72  5350                     subq.w     [A0], 1
  1171. 00000B74  4247                     clr.w      D7
  1172. 00000B76  4500                     .invalid   2, D0 // invalid opcode 4 with b == 4
  1173. 00000B78  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  1174. // begin alternate branch 00000B7A-00000B7E
  1175. fn00000B7A:
  1176. 00000B7A  4E56 FFCE                link       A6, -0x0032
  1177. // end alternate branch 00000B7A-00000B7E
  1178. fn00000B7A: // (misaligned)
  1179. 00000B7C  FFCE                     .invalid   <<F/7/7>>
  1180. 00000B7E  48E7 0318                movem.l    -[A7], D6,D7,A3,A4
  1181. 00000B82  286E 0008                movea.l    A4, [A6 + 0x8]
  1182. 00000B86  2C2E 000C                move.l     D6, [A6 + 0xC]
  1183. 00000B8A  2E2E 0010                move.l     D7, [A6 + 0x10]
  1184. 00000B8E  7001                     moveq.l    D0, 0x01
  1185. 00000B90  2F00                     move.l     -[A7], D0
  1186. 00000B92  2F3C 0000 A800           move.l     -[A7], 0xA800
  1187. 00000B98  4EBA 026C                jsr        [PC + 0x26C /* 00000E06 */]
  1188. 00000B9C  4A00                     tst.b      D0
  1189. 00000B9E  508F                     addq.l     A7, 8
  1190. 00000BA0  6716                     beq        +0x18 /* 00000BB8 */
  1191. 00000BA2  558F                     subq.l     A7, 2
  1192. 00000BA4  2F07                     move.l     -[A7], D7
  1193. 00000BA6  2F06                     move.l     -[A7], D6
  1194. 00000BA8  2F0C                     move.l     -[A7], A4
  1195. 00000BAA  203C 063C 0014           move.l     D0, 0x63C0014
  1196. 00000BB0  A800                     syscall    SoundDispatch
  1197. 00000BB2  3D5F 0014                move.w     [A6 + 0x14], [A7]+
  1198. 00000BB6  6070                     bra        +0x72 /* 00000C28 */
  1199. label00000BB8:
  1200. 00000BB8  7010                     moveq.l    D0, 0x10
  1201. 00000BBA  2207                     move.l     D1, D7
  1202. 00000BBC  E0A1                     asr        D1, D0
  1203. 00000BBE  48C1                     ext.l      D1
  1204. 00000BC0  7001                     moveq.l    D0, 0x01
  1205. 00000BC2  C081                     and.l      D0, D1
  1206. 00000BC4  6608                     bne        +0xA /* 00000BCE */
  1207. 00000BC6  3D7C FF1D 0014           move.w     [A6 + 0x14], 0xFF1D
  1208. 00000BCC  605A                     bra        +0x5C /* 00000C28 */
  1209. label00000BCE:
  1210. 00000BCE  7000                     moveq.l    D0, 0x00
  1211. 00000BD0  2D40 FFCE                move.l     [A6 - 0x32], D0
  1212. 00000BD4  426E FFD2                clr.w      [A6 - 0x2E]
  1213. 00000BD8  426E FFD4                clr.w      [A6 - 0x2C]
  1214. 00000BDC  2D40 FFD6                move.l     [A6 - 0x2A], D0
  1215. 00000BE0  2D40 FFDA                move.l     [A6 - 0x26], D0
  1216. 00000BE4  426E FFDE                clr.w      [A6 - 0x22]
  1217. 00000BE8  2D40 FFE0                move.l     [A6 - 0x20], D0
  1218. 00000BEC  426E FFE4                clr.w      [A6 - 0x1C]
  1219. 00000BF0  223C 0000 FFFF           move.l     D1, 0xFFFF
  1220. 00000BF6  C287                     and.l      D1, D7
  1221. 00000BF8  3D41 FFE6                move.w     [A6 - 0x1A], D1
  1222. 00000BFC  3D7C 0002 FFE8           move.w     [A6 - 0x18], 0x2
  1223. 00000C02  47EE FFEA                lea.l      A3, [A6 - 0x16]
  1224. 00000C06  2686                     move.l     [A3], D6
  1225. 00000C08  2F0C                     move.l     -[A7], A4
  1226. 00000C0A  486B 0004                pea.l      [A3 + 0x4]
  1227. 00000C0E  7212                     moveq.l    D1, 0x12
  1228. 00000C10  2F01                     move.l     -[A7], D1
  1229. 00000C12  4EBA 0490                jsr        [PC + 0x490 /* 000010A4 */]
  1230. 00000C16  558F                     subq.l     A7, 2
  1231. 00000C18  486E FFCE                pea.l      [A6 - 0x32]
  1232. 00000C1C  7000                     moveq.l    D0, 0x00
  1233. 00000C1E  1F00                     move.b     -[A7], D0
  1234. 00000C20  4EBA 052E                jsr        [PC + 0x52E /* 00001150 */]
  1235. 00000C24  3D5F 0014                move.w     [A6 + 0x14], [A7]+
  1236. label00000C28:
  1237. 00000C28  4CEE 18C0 FFBE           movem.l    D6,D7,A3,A4, [A6 - 0x42]
  1238. 00000C2E  4E5E                     unlink     A6
  1239. 00000C30  205F                     movea.l    A0, [A7]+
  1240. 00000C32  DEFC 000C                add.w      A7, 0xC
  1241. 00000C36  4ED0                     jmp        [A0]
  1242. 00000C38  8841                     or.w       D4, D1
  1243. 00000C3A  5349                     subq.w     A1, 1
  1244. 00000C3C  5350                     subq.w     [A0], 1
  1245. 00000C3E  4253                     clr.w      [A3]
  1246. 00000C40  4500                     .invalid   2, D0 // invalid opcode 4 with b == 4
  1247. 00000C42  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  1248. // begin alternate branch 00000C44-00000C4A
  1249. fn00000C44:
  1250. 00000C44  4E56 0000                link       A6, 0
  1251. 00000C48  2F0B                     move.l     -[A7], A3
  1252. // end alternate branch 00000C44-00000C4A
  1253. fn00000C44: // (misaligned)
  1254. 00000C46  0000 2F0B                ori.b      D0, 0xB
  1255. 00000C4A  266E 0008                movea.l    A3, [A6 + 0x8]
  1256. 00000C4E  7001                     moveq.l    D0, 0x01
  1257. 00000C50  2F00                     move.l     -[A7], D0
  1258. 00000C52  2F3C 0000 A800           move.l     -[A7], 0xA800
  1259. 00000C58  4EBA 01AC                jsr        [PC + 0x1AC /* 00000E06 */]
  1260. 00000C5C  4A00                     tst.b      D0
  1261. 00000C5E  508F                     addq.l     A7, 8
  1262. 00000C60  6716                     beq        +0x18 /* 00000C78 */
  1263. 00000C62  558F                     subq.l     A7, 2
  1264. 00000C64  3F2E 000C                move.w     -[A7], [A6 + 0xC]
  1265. 00000C68  2F0B                     move.l     -[A7], A3
  1266. 00000C6A  203C 030C 0014           move.l     D0, 0x30C0014
  1267. 00000C70  A800                     syscall    SoundDispatch
  1268. 00000C72  3D5F 000E                move.w     [A6 + 0xE], [A7]+
  1269. 00000C76  6004                     bra        +0x6 /* 00000C7C */
  1270. label00000C78:
  1271. 00000C78  426E 000E                clr.w      [A6 + 0xE]
  1272. label00000C7C:
  1273. 00000C7C  266E FFFC                movea.l    A3, [A6 - 0x4]
  1274. 00000C80  4E5E                     unlink     A6
  1275. 00000C82  205F                     movea.l    A0, [A7]+
  1276. 00000C84  5C4F                     addq.w     A7, 6
  1277. 00000C86  4ED0                     jmp        [A0]
  1278. 00000C88  8841                     or.w       D4, D1
  1279. 00000C8A  5349                     subq.w     A1, 1
  1280. 00000C8C  5350                     subq.w     [A0], 1
  1281. 00000C8E  4253                     clr.w      [A3]
  1282. 00000C90  4900                     .invalid   4, D0 // invalid opcode 4 with b == 4
  1283. 00000C92  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  1284. // begin alternate branch 00000C94-00000C98
  1285. fn00000C94:
  1286. 00000C94  4E56 FFFC                link       A6, -0x0004
  1287. // end alternate branch 00000C94-00000C98
  1288. fn00000C94: // (misaligned)
  1289. 00000C96  FFFC                     .invalid   <<F/7/7>>
  1290. 00000C98  48E7 0318                movem.l    -[A7], D6,D7,A3,A4
  1291. 00000C9C  3C38 01D2                move.w     D6, [0x000001D2 /* UnitNtryCnt */]
  1292. 00000CA0  7EF4                     moveq.l    D7, 0xFFFFFFF4
  1293. 00000CA2  605C                     bra        +0x5E /* 00000D00 */
  1294. label00000CA4:
  1295. 00000CA4  598F                     subq.l     A7, 4
  1296. 00000CA6  3F07                     move.w     -[A7], D7
  1297. 00000CA8  4EBA 048C                jsr        [PC + 0x48C /* 00001136 */]
  1298. 00000CAC  265F                     movea.l    A3, [A7]+
  1299. 00000CAE  200B                     move.l     D0, A3
  1300. 00000CB0  674A                     beq        +0x4C /* 00000CFC */
  1301. 00000CB2  2053                     movea.l    A0, [A3]
  1302. 00000CB4  4A90                     tst.l      [A0]
  1303. 00000CB6  6744                     beq        +0x46 /* 00000CFC */
  1304. 00000CB8  2053                     movea.l    A0, [A3]
  1305. 00000CBA  3028 0004                move.w     D0, [A0 + 0x4]
  1306. 00000CBE  48C0                     ext.l      D0
  1307. 00000CC0  7240                     moveq.l    D1, 0x40
  1308. 00000CC2  C280                     and.l      D1, D0
  1309. 00000CC4  6708                     beq        +0xA /* 00000CCE */
  1310. 00000CC6  2053                     movea.l    A0, [A3]
  1311. 00000CC8  2050                     movea.l    A0, [A0]
  1312. 00000CCA  2850                     movea.l    A4, [A0]
  1313. 00000CCC  6004                     bra        +0x6 /* 00000CD2 */
  1314. label00000CCE:
  1315. 00000CCE  2053                     movea.l    A0, [A3]
  1316. 00000CD0  2850                     movea.l    A4, [A0]
  1317. label00000CD2:
  1318. 00000CD2  200C                     move.l     D0, A4
  1319. 00000CD4  6726                     beq        +0x28 /* 00000CFC */
  1320. 00000CD6  200C                     move.l     D0, A4
  1321. 00000CD8  7212                     moveq.l    D1, 0x12
  1322. 00000CDA  D081                     add.l      D0, D1
  1323. 00000CDC  2D40 FFFC                move.l     [A6 - 0x4], D0
  1324. 00000CE0  558F                     subq.l     A7, 2
  1325. 00000CE2  2F2E FFFC                move.l     -[A7], [A6 - 0x4]
  1326. 00000CE6  2F2E 0008                move.l     -[A7], [A6 + 0x8]
  1327. 00000CEA  7000                     moveq.l    D0, 0x00
  1328. 00000CEC  1F00                     move.b     -[A7], D0
  1329. 00000CEE  1F00                     move.b     -[A7], D0
  1330. 00000CF0  4EBA 0404                jsr        [PC + 0x404 /* 000010F6 */]
  1331. 00000CF4  4A1F                     tst.b      [A7]+
  1332. 00000CF6  6704                     beq        +0x6 /* 00000CFC */
  1333. 00000CF8  3007                     move.w     D0, D7
  1334. 00000CFA  6012                     bra        +0x14 /* 00000D0E */
  1335. label00000CFC:
  1336. 00000CFC  3007                     move.w     D0, D7
  1337. 00000CFE  5347                     subq.w     D7, 1
  1338. label00000D00:
  1339. 00000D00  48C7                     ext.l      D7
  1340. 00000D02  48C6                     ext.l      D6
  1341. 00000D04  2006                     move.l     D0, D6
  1342. 00000D06  4480                     neg.l      D0
  1343. 00000D08  B087                     cmp.l      D0, D7
  1344. 00000D0A  6F98                     ble        -0x66 /* 00000CA4 */
  1345. 00000D0C  7000                     moveq.l    D0, 0x00
  1346. label00000D0E:
  1347. 00000D0E  4CEE 18C0 FFEC           movem.l    D6,D7,A3,A4, [A6 - 0x14]
  1348. 00000D14  4E5E                     unlink     A6
  1349. 00000D16  4E75                     rts
  1350. 00000D18  8847                     or.w       D4, D7
  1351. 00000D1A  6574                     bcs        +0x76 /* 00000D90 */
  1352. 00000D1C  4472 7672                neg.w      [A2 + D7.w * 8 + 0x72]
  1353. 00000D20  5200                     addq.b     D0, 1
  1354. 00000D22  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  1355. // begin alternate branch 00000D24-00000D28
  1356. fn00000D24:
  1357. 00000D24  4E56 FFCE                link       A6, -0x0032
  1358. // end alternate branch 00000D24-00000D28
  1359. fn00000D24: // (misaligned)
  1360. 00000D26  FFCE                     .invalid   <<F/7/7>>
  1361. 00000D28  48E7 0110                movem.l    -[A7], D7,A3
  1362. 00000D2C  7000                     moveq.l    D0, 0x00
  1363. 00000D2E  2D40 FFCE                move.l     [A6 - 0x32], D0
  1364. 00000D32  426E FFD2                clr.w      [A6 - 0x2E]
  1365. 00000D36  426E FFD4                clr.w      [A6 - 0x2C]
  1366. 00000D3A  2D40 FFD6                move.l     [A6 - 0x2A], D0
  1367. 00000D3E  2D40 FFDA                move.l     [A6 - 0x26], D0
  1368. 00000D42  426E FFDE                clr.w      [A6 - 0x22]
  1369. 00000D46  2D40 FFE0                move.l     [A6 - 0x20], D0
  1370. 00000D4A  426E FFE4                clr.w      [A6 - 0x1C]
  1371. 00000D4E  3D6E 000A FFE6           move.w     [A6 - 0x1A], [A6 + 0xA]
  1372. 00000D54  3D7C 0002 FFE8           move.w     [A6 - 0x18], 0x2
  1373. 00000D5A  47EE FFEA                lea.l      A3, [A6 - 0x16]
  1374. 00000D5E  26AE 000C                move.l     [A3], [A6 + 0xC]
  1375. 00000D62  486E 0010                pea.l      [A6 + 0x10]
  1376. 00000D66  486B 0004                pea.l      [A3 + 0x4]
  1377. 00000D6A  7204                     moveq.l    D1, 0x04
  1378. 00000D6C  2F01                     move.l     -[A7], D1
  1379. 00000D6E  4EBA 0334                jsr        [PC + 0x334 /* 000010A4 */]
  1380. 00000D72  4A2E 0017                tst.b      [A6 + 0x17]
  1381. 00000D76  6710                     beq        +0x12 /* 00000D88 */
  1382. 00000D78  486E FFCE                pea.l      [A6 - 0x32]
  1383. 00000D7C  206F 0000                movea.l    A0, [A7 + 0x0]
  1384. 00000D80  A205                     syscall    Status, flags=2
  1385. 00000D82  3E00                     move.w     D7, D0
  1386. 00000D84  588F                     addq.l     A7, 4
  1387. 00000D86  6010                     bra        +0x12 /* 00000D98 */
  1388. label00000D88:
  1389. 00000D88  558F                     subq.l     A7, 2
  1390. 00000D8A  486E FFCE                pea.l      [A6 - 0x32]
  1391. 00000D8E  7000                     moveq.l    D0, 0x00
  1392. label00000D90:
  1393. 00000D90  1F00                     move.b     -[A7], D0
  1394. 00000D92  4EBA 03CE                jsr        [PC + 0x3CE /* 00001162 */]
  1395. 00000D96  3E1F                     move.w     D7, [A7]+
  1396. label00000D98:
  1397. 00000D98  48C7                     ext.l      D7
  1398. 00000D9A  4A87                     tst.l      D7
  1399. 00000D9C  6618                     bne        +0x1A /* 00000DB6 */
  1400. 00000D9E  4A93                     tst.l      [A3]
  1401. 00000DA0  6F14                     ble        +0x16 /* 00000DB6 */
  1402. 00000DA2  7012                     moveq.l    D0, 0x12
  1403. 00000DA4  B093                     cmp.l      D0, [A3]
  1404. 00000DA6  6D0E                     blt        +0x10 /* 00000DB6 */
  1405. 00000DA8  486B 0004                pea.l      [A3 + 0x4]
  1406. 00000DAC  2F2E 0010                move.l     -[A7], [A6 + 0x10]
  1407. 00000DB0  2F13                     move.l     -[A7], [A3]
  1408. 00000DB2  4EBA 02F0                jsr        [PC + 0x2F0 /* 000010A4 */]
  1409. label00000DB6:
  1410. 00000DB6  3007                     move.w     D0, D7
  1411. 00000DB8  4CEE 0880 FFC6           movem.l    D7,A3, [A6 - 0x3A]
  1412. 00000DBE  4E5E                     unlink     A6
  1413. 00000DC0  4E75                     rts
  1414. 00000DC2  8869 6E6E                or.w       D4, [A1 + 0x6E6E]
  1415. 00000DC6  6572                     bcs        +0x74 /* 00000E3A */
  1416. 00000DC8  5350                     subq.w     [A0], 1
  1417. 00000DCA  4200                     clr.b      D0
  1418. 00000DCC  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  1419. // begin alternate branch 00000DCE-00000DD6
  1420. fn00000DCE:
  1421. 00000DCE  4E56 0000                link       A6, 0
  1422. 00000DD2  48E7 0118                movem.l    -[A7], D7,A3,A4
  1423. // end alternate branch 00000DCE-00000DD6
  1424. fn00000DCE: // (misaligned)
  1425. 00000DD0  0000 48E7                ori.b      D0, 0xE7
  1426. 00000DD4  0118                     btst       [A0]+, D0
  1427. 00000DD6  286E 0008                movea.l    A4, [A6 + 0x8]
  1428. 00000DDA  266E 000C                movea.l    A3, [A6 + 0xC]
  1429. 00000DDE  7000                     moveq.l    D0, 0x00
  1430. 00000DE0  1013                     move.b     D0, [A3]
  1431. 00000DE2  3E00                     move.w     D7, D0
  1432. 00000DE4  6002                     bra        +0x4 /* 00000DE8 */
  1433. label00000DE6:
  1434. 00000DE6  18DB                     move.b     [A4]+, [A3]+
  1435. label00000DE8:
  1436. 00000DE8  3007                     move.w     D0, D7
  1437. 00000DEA  5347                     subq.w     D7, 1
  1438. 00000DEC  48C0                     ext.l      D0
  1439. 00000DEE  6CF6                     bge        -0x8 /* 00000DE6 */
  1440. 00000DF0  4CEE 1880 FFF4           movem.l    D7,A3,A4, [A6 - 0xC]
  1441. 00000DF6  4E5E                     unlink     A6
  1442. 00000DF8  4E75                     rts
  1443. 00000DFA  8870 7374                or.w       D4, <<invalid full ext with I/IS == 4>>
  1444. 00000DFE  7263                     moveq.l    D1, 0x63
  1445. 00000E00  7079                     moveq.l    D0, 0x79
  1446. 00000E02  4200                     clr.b      D0
  1447. 00000E04  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  1448. // begin alternate branch 00000E06-00000E0C
  1449. fn00000E06:
  1450. 00000E06  4E56 0000                link       A6, 0
  1451. 00000E0A  598F                     subq.l     A7, 4
  1452. // end alternate branch 00000E06-00000E0C
  1453. fn00000E06: // (misaligned)
  1454. 00000E08  0000 598F                ori.b      D0, 0x8F
  1455. 00000E0C  3F2E 000A                move.w     -[A7], [A6 + 0xA]
  1456. 00000E10  1F2E 000F                move.b     -[A7], [A6 + 0xF]
  1457. 00000E14  4EBA 02CC                jsr        [PC + 0x2CC /* 000010E2 */]
  1458. 00000E18  598F                     subq.l     A7, 4
  1459. 00000E1A  3F3C A89F                move.w     -[A7], 0xA89F
  1460. 00000E1E  4EBA 02B8                jsr        [PC + 0x2B8 /* 000010D8 */]
  1461. 00000E22  201F                     move.l     D0, [A7]+
  1462. 00000E24  B09F                     cmp.l      D0, [A7]+
  1463. 00000E26  56C0                     sne        D0
  1464. 00000E28  4400                     neg.b      D0
  1465. 00000E2A  4E5E                     unlink     A6
  1466. 00000E2C  4E75                     rts
  1467. 00000E2E  8854                     or.w       D4, [A4]
  1468. 00000E30  7261                     moveq.l    D1, 0x61
  1469. 00000E32  7041                     moveq.l    D0, 0x41
  1470. 00000E34  7661                     moveq.l    D3, 0x61
  1471. 00000E36  6900 0000                bvs        +0x2 /* 00000E38 */
  1472. // begin alternate branch 00000E38-00000E3E
  1473. label00000E38:
  1474. 00000E38  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  1475. fn00000E3A: // (misaligned)
  1476. 00000E3C  FFCC                     .invalid   <<F/7/7>>
  1477. // end alternate branch 00000E38-00000E3E
  1478. label00000E38: // (misaligned)
  1479. fn00000E3A:
  1480. 00000E3A  4E56 FFCC                link       A6, -0x0034
  1481. 00000E3E  48E7 0118                movem.l    -[A7], D7,A3,A4
  1482. 00000E42  286E 000C                movea.l    A4, [A6 + 0xC]
  1483. 00000E46  266E 0008                movea.l    A3, [A6 + 0x8]
  1484. 00000E4A  7000                     moveq.l    D0, 0x00
  1485. 00000E4C  2D40 FFDE                move.l     [A6 - 0x22], D0
  1486. 00000E50  426E FFE2                clr.w      [A6 - 0x1E]
  1487. 00000E54  3D7C 0001 FFE6           move.w     [A6 - 0x1A], 0x1
  1488. 00000E5A  2D40 FFE8                move.l     [A6 - 0x18], D0
  1489. 00000E5E  558F                     subq.l     A7, 2
  1490. 00000E60  486E FFCC                pea.l      [A6 - 0x34]
  1491. 00000E64  7200                     moveq.l    D1, 0x00
  1492. 00000E66  1F01                     move.b     -[A7], D1
  1493. 00000E68  4EBA 038A                jsr        [PC + 0x38A /* 000011F4 */]
  1494. 00000E6C  3E1F                     move.w     D7, [A7]+
  1495. 00000E6E  3007                     move.w     D0, D7
  1496. 00000E70  48C0                     ext.l      D0
  1497. 00000E72  6608                     bne        +0xA /* 00000E7C */
  1498. 00000E74  36AE FFEC                move.w     [A3], [A6 - 0x14]
  1499. 00000E78  28AE FFFC                move.l     [A4], [A6 - 0x4]
  1500. label00000E7C:
  1501. 00000E7C  3007                     move.w     D0, D7
  1502. 00000E7E  4CEE 1880 FFC0           movem.l    D7,A3,A4, [A6 - 0x40]
  1503. 00000E84  4E5E                     unlink     A6
  1504. 00000E86  4E75                     rts
  1505. 00000E88  8853                     or.w       D4, [A3]
  1506. 00000E8A  7065                     moveq.l    D0, 0x65
  1507. 00000E8C  6369                     bls        +0x6B /* 00000EF7 */
  1508. 00000E8E  616C                     bsr        +0x6E /* 00000EFC */
  1509. 00000E90  4400                     neg.b      D0
  1510. 00000E92  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  1511. // begin alternate branch 00000E94-00000E98
  1512. fn00000E94:
  1513. 00000E94  4E56 FFEC                link       A6, -0x0014
  1514. // end alternate branch 00000E94-00000E98
  1515. fn00000E94: // (misaligned)
  1516. 00000E96  FFEC                     .invalid   <<F/7/7>>
  1517. 00000E98  48E7 0318                movem.l    -[A7], D6,D7,A3,A4
  1518. 00000E9C  2E2E 0010                move.l     D7, [A6 + 0x10]
  1519. 00000EA0  286E 000C                movea.l    A4, [A6 + 0xC]
  1520. 00000EA4  266E 0008                movea.l    A3, [A6 + 0x8]
  1521. 00000EA8  4246                     clr.w      D6
  1522. 00000EAA  3013                     move.w     D0, [A3]
  1523. 00000EAC  48C0                     ext.l      D0
  1524. 00000EAE  6676                     bne        +0x78 /* 00000F26 */
  1525. 00000EB0  4A94                     tst.l      [A4]
  1526. 00000EB2  6672                     bne        +0x74 /* 00000F26 */
  1527. 00000EB4  558F                     subq.l     A7, 2
  1528. 00000EB6  7001                     moveq.l    D0, 0x01
  1529. 00000EB8  3F00                     move.w     -[A7], D0
  1530. 00000EBA  486E FFF0                pea.l      [A6 - 0x10]
  1531. 00000EBE  4EBA 061C                jsr        [PC + 0x61C /* 000014DC */]
  1532. 00000EC2  301F                     move.w     D0, [A7]+
  1533. 00000EC4  48C0                     ext.l      D0
  1534. 00000EC6  6704                     beq        +0x6 /* 00000ECC */
  1535. 00000EC8  426E FFF4                clr.w      [A6 - 0xC]
  1536. label00000ECC:
  1537. 00000ECC  0C87 4E4F 4E45           cmpi.l     D7, 0x4E4F4E45 /* 'NONE' */
  1538. 00000ED2  6746                     beq        +0x48 /* 00000F1A */
  1539. 00000ED4  302E FFF4                move.w     D0, [A6 - 0xC]
  1540. 00000ED8  48C0                     ext.l      D0
  1541. 00000EDA  0C80 0000 0700           cmpi.l     D0, 0x700
  1542. 00000EE0  6D38                     blt        +0x3A /* 00000F1A */
  1543. 00000EE2  2F3C 666F 6C64           move.l     -[A7], 0x666F6C64 /* 'fold' */
  1544. 00000EE8  486E FFEC                pea.l      [A6 - 0x14]
  1545. 00000EEC  202F 0004                move.l     D0, [A7 + 0x4]
  1546. 00000EF0  A1AD                     syscall    Gestalt, flags=1
  1547. 00000EF2  226F 0000                movea.l    A1, [A7 + 0x0]
  1548. 00000EF6  2288                     move.l     [A1], A0
  1549. 00000EF8  508F                     addq.l     A7, 8
  1550. 00000EFA  7001                     moveq.l    D0, 0x01
  1551. fn00000EFC:
  1552. 00000EFC  B0AE FFEC                cmp.l      D0, [A6 - 0x14]
  1553. 00000F00  6618                     bne        +0x1A /* 00000F1A */
  1554. 00000F02  558F                     subq.l     A7, 2
  1555. 00000F04  3F3C 8000                move.w     -[A7], 0x8000
  1556. 00000F08  2F07                     move.l     -[A7], D7
  1557. 00000F0A  7001                     moveq.l    D0, 0x01
  1558. 00000F0C  1F00                     move.b     -[A7], D0
  1559. 00000F0E  2F0B                     move.l     -[A7], A3
  1560. 00000F10  2F0C                     move.l     -[A7], A4
  1561. 00000F12  7000                     moveq.l    D0, 0x00
  1562. 00000F14  A823                     syscall    AliasDispatch
  1563. 00000F16  301F                     move.w     D0, [A7]+
  1564. 00000F18  600E                     bra        +0x10 /* 00000F28 */
  1565. label00000F1A:
  1566. 00000F1A  2F0C                     move.l     -[A7], A4
  1567. 00000F1C  2F0B                     move.l     -[A7], A3
  1568. 00000F1E  4EBA FF1A                jsr        [PC - 0xE6 /* 00000E3A */]
  1569. 00000F22  508F                     addq.l     A7, 8
  1570. 00000F24  6002                     bra        +0x4 /* 00000F28 */
  1571. label00000F26:
  1572. 00000F26  3006                     move.w     D0, D6
  1573. label00000F28:
  1574. 00000F28  4CEE 18C0 FFDC           movem.l    D6,D7,A3,A4, [A6 - 0x24]
  1575. 00000F2E  4E5E                     unlink     A6
  1576. 00000F30  4E75                     rts
  1577. 00000F32  8850                     or.w       D4, [A0]
  1578. 00000F34  6170                     bsr        +0x72 /* 00000FA6 */
  1579. 00000F36  616C                     bsr        +0x6E /* 00000FA4 */
  1580. 00000F38  4469 7300                neg.w      [A1 + 0x7300]
  1581. 00000F3C  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  1582. // begin alternate branch 00000F3E-00000F42
  1583. fn00000F3E:
  1584. 00000F3E  4E56 FFC4                link       A6, -0x003C
  1585. // end alternate branch 00000F3E-00000F42
  1586. fn00000F3E: // (misaligned)
  1587. 00000F40  FFC4                     .invalid   <<F/7/7>>
  1588. 00000F42  48E7 0018                movem.l    -[A7], A3,A4
  1589. 00000F46  286E 0008                movea.l    A4, [A6 + 0x8]
  1590. 00000F4A  266E 000C                movea.l    A3, [A6 + 0xC]
  1591. 00000F4E  426E FFC4                clr.w      [A6 - 0x3C]
  1592. 00000F52  7000                     moveq.l    D0, 0x00
  1593. 00000F54  2D40 FFC6                move.l     [A6 - 0x3A], D0
  1594. 00000F58  36BC FFFF                move.w     [A3], 0xFFFF
  1595. 00000F5C  2F2E 0014                move.l     -[A7], [A6 + 0x14]
  1596. 00000F60  486E FFC6                pea.l      [A6 - 0x3A]
  1597. 00000F64  486E FFC4                pea.l      [A6 - 0x3C]
  1598. 00000F68  4EBA FF2A                jsr        [PC - 0xD6 /* 00000E94 */]
  1599. 00000F6C  3D40 FFFE                move.w     [A6 - 0x2], D0
  1600. 00000F70  48C0                     ext.l      D0
  1601. 00000F72  4FEF 000C                lea.l      A7, [A7 + 0xC]
  1602. 00000F76  6706                     beq        +0x8 /* 00000F7E */
  1603. 00000F78  302E FFFE                move.w     D0, [A6 - 0x2]
  1604. 00000F7C  6060                     bra        +0x62 /* 00000FDE */
  1605. label00000F7E:
  1606. 00000F7E  558F                     subq.l     A7, 2
  1607. 00000F80  7000                     moveq.l    D0, 0x00
  1608. 00000F82  2F00                     move.l     -[A7], D0
  1609. 00000F84  486E FFFE                pea.l      [A6 - 0x2]
  1610. 00000F88  4EBA 0204                jsr        [PC + 0x204 /* 0000118E */]
  1611. 00000F8C  7000                     moveq.l    D0, 0x00
  1612. 00000F8E  2D40 FFDC                move.l     [A6 - 0x24], D0
  1613. 00000F92  3D6E FFC4 FFE0           move.w     [A6 - 0x20], [A6 - 0x3C]
  1614. 00000F98  2D6E FFC6 FFFA           move.l     [A6 - 0x6], [A6 - 0x3A]
  1615. 00000F9E  558F                     subq.l     A7, 2
  1616. 00000FA0  486E FFCA                pea.l      [A6 - 0x36]
  1617. fn00000FA4:
  1618. 00000FA4  7200                     moveq.l    D1, 0x00
  1619. fn00000FA6:
  1620. 00000FA6  1F01                     move.b     -[A7], D1
  1621. 00000FA8  4EBA 0226                jsr        [PC + 0x226 /* 000011D0 */]
  1622. 00000FAC  558F                     subq.l     A7, 2
  1623. 00000FAE  3F2E FFC4                move.w     -[A7], [A6 - 0x3C]
  1624. 00000FB2  2F2E FFC6                move.l     -[A7], [A6 - 0x3A]
  1625. 00000FB6  598F                     subq.l     A7, 4
  1626. 00000FB8  2F0C                     move.l     -[A7], A4
  1627. 00000FBA  4EBA 0898                jsr        [PC + 0x898 /* 00001854 */]
  1628. 00000FBE  1F2E 0013                move.b     -[A7], [A6 + 0x13]
  1629. 00000FC2  4EBA 0394                jsr        [PC + 0x394 /* 00001358 */]
  1630. 00000FC6  369F                     move.w     [A3], [A7]+
  1631. 00000FC8  558F                     subq.l     A7, 2
  1632. 00000FCA  7000                     moveq.l    D0, 0x00
  1633. 00000FCC  2F00                     move.l     -[A7], D0
  1634. 00000FCE  3F2E FFFE                move.w     -[A7], [A6 - 0x2]
  1635. 00000FD2  4EBA 01DC                jsr        [PC + 0x1DC /* 000011B0 */]
  1636. 00000FD6  558F                     subq.l     A7, 2
  1637. 00000FD8  A9AF                     syscall    ResError
  1638. 00000FDA  301F                     move.w     D0, [A7]+
  1639. 00000FDC  5C8F                     addq.l     A7, 6
  1640. label00000FDE:
  1641. 00000FDE  4CEE 1800 FFBC           movem.l    A3,A4, [A6 - 0x44]
  1642. 00000FE4  4E5E                     unlink     A6
  1643. 00000FE6  4E75                     rts
  1644. 00000FE8  884F                     or.w       D4, A7
  1645. 00000FEA  7065                     moveq.l    D0, 0x65
  1646. 00000FEC  6E52                     bgt        +0x54 /* 00001040 */
  1647. 00000FEE  6573                     bcs        +0x75 /* 00001063 */
  1648. 00000FF0  6F00 0000                ble        +0x2 /* 00000FF2 */
  1649. // begin alternate branch 00000FF2-00000FF8
  1650. label00000FF2:
  1651. 00000FF2  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  1652. fn00000FF4: // (misaligned)
  1653. 00000FF6  FFF0                     .invalid   <<F/7/7>>
  1654. // end alternate branch 00000FF2-00000FF8
  1655. label00000FF2: // (misaligned)
  1656. fn00000FF4:
  1657. 00000FF4  4E56 FFF0                link       A6, -0x0010
  1658. 00000FF8  48E7 0110                movem.l    -[A7], D7,A3
  1659. 00000FFC  3E2E 0008                move.w     D7, [A6 + 0x8]
  1660. 00001000  47EE FFF2                lea.l      A3, [A6 - 0xE]
  1661. 00001004  16BC 000C                move.b     [A3], 0xC
  1662. 00001008  177C 0056 0001           move.b     [A3 + 0x1], 0x56 /* 'V' */
  1663. 0000100E  177C 006F 0002           move.b     [A3 + 0x2], 0x6F /* 'o' */
  1664. 00001014  177C 0069 0003           move.b     [A3 + 0x3], 0x69 /* 'i' */
  1665. 0000101A  177C 0063 0004           move.b     [A3 + 0x4], 0x63 /* 'c' */
  1666. 00001020  177C 0065 0005           move.b     [A3 + 0x5], 0x65 /* 'e' */
  1667. 00001026  177C 0020 0006           move.b     [A3 + 0x6], 0x20 /* ' ' */
  1668. 0000102C  177C 0052 0007           move.b     [A3 + 0x7], 0x52 /* 'R' */
  1669. 00001032  177C 0065 0008           move.b     [A3 + 0x8], 0x65 /* 'e' */
  1670. 00001038  177C 0063 0009           move.b     [A3 + 0x9], 0x63 /* 'c' */
  1671. 0000103E  177C 006F 000A           move.b     [A3 + 0xA], 0x6F /* 'o' */
  1672. // begin alternate branch 00001040-00001050
  1673. label00001040:
  1674. 00001040  006F 000A 177C           ori.w      [A7 + 0x177C], 0xA /* '\n' */
  1675. 00001046  0072 000B 177C           ori.w      <<invalid full ext with I/IS == 4>>, 0xB
  1676. 0000104C  0064 000C                ori.w      -[A4], 0xC
  1677. // end alternate branch 00001040-00001050
  1678. label00001040: // (misaligned)
  1679. 00001044  177C 0072 000B           move.b     [A3 + 0xB], 0x72 /* 'r' */
  1680. 0000104A  177C 0064 000C           move.b     [A3 + 0xC], 0x64 /* 'd' */
  1681. 00001050  2F3C 4E4F 4E45           move.l     -[A7], 0x4E4F4E45 /* 'NONE' */
  1682. 00001056  48C7                     ext.l      D7
  1683. 00001058  2F07                     move.l     -[A7], D7
  1684. 0000105A  486E FFF0                pea.l      [A6 - 0x10]
  1685. 0000105E  2F0B                     move.l     -[A7], A3
  1686. 00001060  4EBA FEDC                jsr        [PC - 0x124 /* 00000F3E */]
  1687. 00001064  48C0                     ext.l      D0
  1688. 00001066  4FEF 0010                lea.l      A7, [A7 + 0x10]
  1689. 0000106A  6718                     beq        +0x1A /* 00001084 */
  1690. 0000106C  2F3C 6374 726C           move.l     -[A7], 0x6374726C /* 'ctrl' */
  1691. 00001072  48C7                     ext.l      D7
  1692. 00001074  2F07                     move.l     -[A7], D7
  1693. 00001076  486E FFF0                pea.l      [A6 - 0x10]
  1694. 0000107A  2F0B                     move.l     -[A7], A3
  1695. 0000107C  4EBA FEC0                jsr        [PC - 0x140 /* 00000F3E */]
  1696. 00001080  4FEF 0010                lea.l      A7, [A7 + 0x10]
  1697. label00001084:
  1698. 00001084  3D6E FFF0 000A           move.w     [A6 + 0xA], [A6 - 0x10]
  1699. 0000108A  4CEE 0880 FFE8           movem.l    D7,A3, [A6 - 0x18]
  1700. 00001090  4E5E                     unlink     A6
  1701. 00001092  205F                     movea.l    A0, [A7]+
  1702. 00001094  544F                     addq.w     A7, 2
  1703. 00001096  4ED0                     jmp        [A0]
  1704. 00001098  8841                     or.w       D4, D1
  1705. 0000109A  5349                     subq.w     A1, 1
  1706. 0000109C  4F50                     chk.w      D7, [A0]
  1707. 0000109E  454E                     chk.w      D2, A6
  1708. 000010A0  5200                     addq.b     D0, 1
  1709. 000010A2  0000 221F                ori.b      D0, 0x1F
  1710. // begin alternate branch 000010A4-000010A6
  1711. fn000010A4:
  1712. 000010A4  221F                     move.l     D1, [A7]+
  1713. // end alternate branch 000010A4-000010A6
  1714. fn000010A4: // (misaligned)
  1715. 000010A6  201F                     move.l     D0, [A7]+
  1716. 000010A8  225F                     movea.l    A1, [A7]+
  1717. 000010AA  205F                     movea.l    A0, [A7]+
  1718. 000010AC  A02E                     syscall    BlockMove/BlockMoveData
  1719. 000010AE  2241                     movea.l    A1, D1
  1720. 000010B0  4ED1                     jmp        [A1]
  1721. fn000010B2:
  1722. 000010B2  7018                     moveq.l    D0, 0x18
  1723. label000010B4:
  1724. 000010B4  4267                     clr.w      -[A7]
  1725. 000010B6  51C8 FFFC                dbf        D0, -0x6 /* 000010B4 */
  1726. 000010BA  2F6F 003A 0012           move.l     [A7 + 0x12], [A7 + 0x3A]
  1727. 000010C0  204F                     movea.l    A0, A7
  1728. 000010C2  A000                     syscall    Open/PBHOpen/HOpen
  1729. 000010C4  206F 0036                movea.l    A0, [A7 + 0x36]
  1730. 000010C8  30AF 0018                move.w     [A0], [A7 + 0x18]
  1731. 000010CC  206F 0032                movea.l    A0, [A7 + 0x32]
  1732. 000010D0  4FEF 003E                lea.l      A7, [A7 + 0x3E]
  1733. 000010D4  3E80                     move.w     [A7], D0
  1734. 000010D6  4ED0                     jmp        [A0]
  1735. fn000010D8:
  1736. 000010D8  225F                     movea.l    A1, [A7]+
  1737. 000010DA  301F                     move.w     D0, [A7]+
  1738. 000010DC  A146                     syscall    GetTrapAddress, flags=1
  1739. 000010DE  2E88                     move.l     [A7], A0
  1740. 000010E0  4ED1                     jmp        [A1]
  1741. fn000010E2:
  1742. 000010E2  225F                     movea.l    A1, [A7]+
  1743. 000010E4  121F                     move.b     D1, [A7]+
  1744. 000010E6  301F                     move.w     D0, [A7]+
  1745. 000010E8  4A01                     tst.b      D1
  1746. 000010EA  6704                     beq        +0x6 /* 000010F0 */
  1747. 000010EC  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  1748. 000010EE  6002                     bra        +0x4 /* 000010F2 */
  1749. label000010F0:
  1750. 000010F0  A346                     syscall    GetOSTrapAddress, flags=3
  1751. label000010F2:
  1752. 000010F2  2E88                     move.l     [A7], A0
  1753. 000010F4  4ED1                     jmp        [A1]
  1754. fn000010F6:
  1755. 000010F6  206F 000C                movea.l    A0, [A7 + 0xC]
  1756. 000010FA  226F 0008                movea.l    A1, [A7 + 0x8]
  1757. 000010FE  7000                     moveq.l    D0, 0x00
  1758. 00001100  1018                     move.b     D0, [A0]+
  1759. 00001102  4840                     swap.w     D0
  1760. 00001104  1019                     move.b     D0, [A1]+
  1761. 00001106  4A2F 0004                tst.b      [A7 + 0x4]
  1762. 0000110A  670E                     beq        +0x10 /* 0000111A */
  1763. 0000110C  4A2F 0006                tst.b      [A7 + 0x6]
  1764. 00001110  6704                     beq        +0x6 /* 00001116 */
  1765. 00001112  A43C                     syscall    CmpString, flags=4
  1766. 00001114  6010                     bra        +0x12 /* 00001126 */
  1767. label00001116:
  1768. 00001116  A03C                     syscall    CmpString
  1769. 00001118  600C                     bra        +0xE /* 00001126 */
  1770. label0000111A:
  1771. 0000111A  4A2F 0006                tst.b      [A7 + 0x6]
  1772. 0000111E  6704                     beq        +0x6 /* 00001124 */
  1773. 00001120  A63C                     syscall    CmpString, flags=6
  1774. 00001122  6002                     bra        +0x4 /* 00001126 */
  1775. label00001124:
  1776. 00001124  A23C                     syscall    CmpString, flags=2
  1777. label00001126:
  1778. 00001126  0A00 0001                xori.b     D0, 0x1
  1779. 0000112A  1F40 0010                move.b     [A7 + 0x10], D0
  1780. 0000112E  205F                     movea.l    A0, [A7]+
  1781. 00001130  4FEF 000C                lea.l      A7, [A7 + 0xC]
  1782. 00001134  4ED0                     jmp        [A0]
  1783. fn00001136:
  1784. 00001136  205F                     movea.l    A0, [A7]+
  1785. 00001138  301F                     move.w     D0, [A7]+
  1786. 0000113A  4297                     clr.l      [A7]
  1787. 0000113C  4640                     not.w      D0
  1788. 0000113E  B078 01D2                cmp.w      D0, [0x000001D2 /* UnitNtryCnt */]
  1789. 00001142  640A                     bcc        +0xC /* 0000114E */
  1790. 00001144  E548                     lsl        D0.w, 2
  1791. 00001146  2278 011C                movea.l    A1, [0x0000011C /* UTableBase */]
  1792. 0000114A  2EB1 0000                move.l     [A7], [A1 + D0.w]
  1793. label0000114E:
  1794. 0000114E  4ED0                     jmp        [A0]
  1795. fn00001150:
  1796. 00001150  225F                     movea.l    A1, [A7]+
  1797. 00001152  101F                     move.b     D0, [A7]+
  1798. 00001154  205F                     movea.l    A0, [A7]+
  1799. 00001156  6604                     bne        +0x6 /* 0000115C */
  1800. 00001158  A004                     syscall    Control
  1801. 0000115A  6002                     bra        +0x4 /* 0000115E */
  1802. label0000115C:
  1803. 0000115C  A404                     syscall    Control, flags=4
  1804. label0000115E:
  1805. 0000115E  3E80                     move.w     [A7], D0
  1806. 00001160  4ED1                     jmp        [A1]
  1807. fn00001162:
  1808. 00001162  225F                     movea.l    A1, [A7]+
  1809. 00001164  101F                     move.b     D0, [A7]+
  1810. 00001166  205F                     movea.l    A0, [A7]+
  1811. 00001168  6604                     bne        +0x6 /* 0000116E */
  1812. 0000116A  A005                     syscall    Status
  1813. 0000116C  6002                     bra        +0x4 /* 00001170 */
  1814. label0000116E:
  1815. 0000116E  A405                     syscall    Status, flags=4
  1816. label00001170:
  1817. 00001170  3E80                     move.w     [A7], D0
  1818. 00001172  4ED1                     jmp        [A1]
  1819. fn00001174:
  1820. 00001174  4E56 FFCE                link       A6, -0x0032
  1821. 00001178  204F                     movea.l    A0, A7
  1822. 0000117A  316E 0008 0018           move.w     [A0 + 0x18], [A6 + 0x8]
  1823. 00001180  A001                     syscall    Close
  1824. 00001182  3D40 000A                move.w     [A6 + 0xA], D0
  1825. 00001186  4E5E                     unlink     A6
  1826. 00001188  205F                     movea.l    A0, [A7]+
  1827. 0000118A  548F                     addq.l     A7, 2
  1828. 0000118C  4ED0                     jmp        [A0]
  1829. fn0000118E:
  1830. 0000118E  4E56 FFC0                link       A6, -0x0040
  1831. 00001192  204F                     movea.l    A0, A7
  1832. 00001194  216E 000C 0012           move.l     [A0 + 0x12], [A6 + 0xC]
  1833. 0000119A  A014                     syscall    GetVol/PBHGetVol/HGetVol
  1834. 0000119C  3D40 0010                move.w     [A6 + 0x10], D0
  1835. 000011A0  226E 0008                movea.l    A1, [A6 + 0x8]
  1836. 000011A4  32A8 0016                move.w     [A1], [A0 + 0x16]
  1837. 000011A8  4E5E                     unlink     A6
  1838. 000011AA  225F                     movea.l    A1, [A7]+
  1839. 000011AC  508F                     addq.l     A7, 8
  1840. 000011AE  4ED1                     jmp        [A1]
  1841. fn000011B0:
  1842. 000011B0  4E56 FFC0                link       A6, -0x0040
  1843. 000011B4  204F                     movea.l    A0, A7
  1844. 000011B6  216E 000A 0012           move.l     [A0 + 0x12], [A6 + 0xA]
  1845. 000011BC  316E 0008 0016           move.w     [A0 + 0x16], [A6 + 0x8]
  1846. 000011C2  A015                     syscall    SetVol/PBHSetVol/HSetVol
  1847. 000011C4  3D40 000E                move.w     [A6 + 0xE], D0
  1848. 000011C8  4E5E                     unlink     A6
  1849. 000011CA  225F                     movea.l    A1, [A7]+
  1850. 000011CC  5C8F                     addq.l     A7, 6
  1851. 000011CE  4ED1                     jmp        [A1]
  1852. fn000011D0:
  1853. 000011D0  225F                     movea.l    A1, [A7]+
  1854. 000011D2  101F                     move.b     D0, [A7]+
  1855. 000011D4  205F                     movea.l    A0, [A7]+
  1856. 000011D6  6604                     bne        +0x6 /* 000011DC */
  1857. 000011D8  A215                     syscall    SetVol/PBHSetVol/HSetVol, flags=2
  1858. 000011DA  6002                     bra        +0x4 /* 000011DE */
  1859. label000011DC:
  1860. 000011DC  A615                     syscall    SetVol/PBHSetVol/HSetVol, flags=6
  1861. label000011DE:
  1862. 000011DE  3E80                     move.w     [A7], D0
  1863. 000011E0  4ED1                     jmp        [A1]
  1864. fn000011E2:
  1865. 000011E2  225F                     movea.l    A1, [A7]+
  1866. 000011E4  101F                     move.b     D0, [A7]+
  1867. 000011E6  205F                     movea.l    A0, [A7]+
  1868. 000011E8  6604                     bne        +0x6 /* 000011EE */
  1869. 000011EA  A214                     syscall    GetVol/PBHGetVol/HGetVol, flags=2
  1870. 000011EC  6002                     bra        +0x4 /* 000011F0 */
  1871. label000011EE:
  1872. 000011EE  A614                     syscall    GetVol/PBHGetVol/HGetVol, flags=6
  1873. label000011F0:
  1874. 000011F0  3E80                     move.w     [A7], D0
  1875. 000011F2  4ED1                     jmp        [A1]
  1876. fn000011F4:
  1877. 000011F4  225F                     movea.l    A1, [A7]+
  1878. 000011F6  101F                     move.b     D0, [A7]+
  1879. 000011F8  205F                     movea.l    A0, [A7]+
  1880. 000011FA  6606                     bne        +0x8 /* 00001202 */
  1881. 000011FC  7007                     moveq.l    D0, 0x07
  1882. 000011FE  A260                     syscall    FSDispatch/HFSDispatch, flags=2
  1883. 00001200  6004                     bra        +0x6 /* 00001206 */
  1884. label00001202:
  1885. 00001202  7007                     moveq.l    D0, 0x07
  1886. 00001204  A660                     syscall    FSDispatch/HFSDispatch, flags=6
  1887. label00001206:
  1888. 00001206  3E80                     move.w     [A7], D0
  1889. 00001208  4ED1                     jmp        [A1]
  1890. fn0000120A:
  1891. 0000120A  225F                     movea.l    A1, [A7]+
  1892. 0000120C  101F                     move.b     D0, [A7]+
  1893. 0000120E  205F                     movea.l    A0, [A7]+
  1894. 00001210  6604                     bne        +0x6 /* 00001216 */
  1895. 00001212  A20A                     syscall    OpenRF/PBHOpenRF/HOpenRF, flags=2
  1896. 00001214  6002                     bra        +0x4 /* 00001218 */
  1897. label00001216:
  1898. 00001216  A60A                     syscall    OpenRF/PBHOpenRF/HOpenRF, flags=6
  1899. label00001218:
  1900. 00001218  3E80                     move.w     [A7], D0
  1901. 0000121A  4ED1                     jmp        [A1]
  1902. fn0000121C:
  1903. 0000121C  4E56 FFCC                link       A6, -0x0034
  1904. 00001220  2F07                     move.l     -[A7], D7
  1905. 00001222  2D6E 0010 FFDE           move.l     [A6 - 0x22], [A6 + 0x10]
  1906. 00001228  558F                     subq.l     A7, 2
  1907. 0000122A  486E FFCC                pea.l      [A6 - 0x34]
  1908. 0000122E  7000                     moveq.l    D0, 0x00
  1909. 00001230  1F00                     move.b     -[A7], D0
  1910. 00001232  4EBA FFAE                jsr        [PC - 0x52 /* 000011E2 */]
  1911. 00001236  3E1F                     move.w     D7, [A7]+
  1912. 00001238  206E 000C                movea.l    A0, [A6 + 0xC]
  1913. 0000123C  30AE FFE2                move.w     [A0], [A6 - 0x1E]
  1914. 00001240  206E 0008                movea.l    A0, [A6 + 0x8]
  1915. 00001244  20AE FFFC                move.l     [A0], [A6 - 0x4]
  1916. 00001248  3D47 0014                move.w     [A6 + 0x14], D7
  1917. 0000124C  2E2E FFC8                move.l     D7, [A6 - 0x38]
  1918. 00001250  4E5E                     unlink     A6
  1919. 00001252  205F                     movea.l    A0, [A7]+
  1920. 00001254  4FEF 000C                lea.l      A7, [A7 + 0xC]
  1921. 00001258  4ED0                     jmp        [A0]
  1922. 0000125A  8748 4745                pack       -[A3], -[A0], 0x4745
  1923. 0000125E  5456                     addq.w     [A6], 2
  1924. 00001260  4F4C                     chk.w      D7, A4
  1925. 00001262  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  1926. // begin alternate branch 00001264-00001268
  1927. fn00001264:
  1928. 00001264  4E56 FFCC                link       A6, -0x0034
  1929. // end alternate branch 00001264-00001268
  1930. fn00001264: // (misaligned)
  1931. 00001266  FFCC                     .invalid   <<F/7/7>>
  1932. 00001268  2D6E 000E FFDE           move.l     [A6 - 0x22], [A6 + 0xE]
  1933. 0000126E  3D6E 000C FFE2           move.w     [A6 - 0x1E], [A6 + 0xC]
  1934. 00001274  2D6E 0008 FFFC           move.l     [A6 - 0x4], [A6 + 0x8]
  1935. 0000127A  558F                     subq.l     A7, 2
  1936. 0000127C  486E FFCC                pea.l      [A6 - 0x34]
  1937. 00001280  7000                     moveq.l    D0, 0x00
  1938. 00001282  1F00                     move.b     -[A7], D0
  1939. 00001284  4EBA FF4A                jsr        [PC - 0xB6 /* 000011D0 */]
  1940. 00001288  3D5F 0012                move.w     [A6 + 0x12], [A7]+
  1941. 0000128C  4E5E                     unlink     A6
  1942. 0000128E  205F                     movea.l    A0, [A7]+
  1943. 00001290  4FEF 000A                lea.l      A7, [A7 + 0xA]
  1944. 00001294  4ED0                     jmp        [A0]
  1945. 00001296  8748 5345                pack       -[A3], -[A0], 0x5345
  1946. 0000129A  5456                     addq.w     [A6], 2
  1947. 0000129C  4F4C                     chk.w      D7, A4
  1948. 0000129E  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  1949. // begin alternate branch 000012A0-000012A4
  1950. fn000012A0:
  1951. 000012A0  4E56 FF86                link       A6, -0x007A
  1952. // end alternate branch 000012A0-000012A4
  1953. fn000012A0: // (misaligned)
  1954. 000012A2  FF86                     .invalid   <<F/6/7>>
  1955. 000012A4  2F07                     move.l     -[A7], D7
  1956. 000012A6  3D6E 0016 FF9C           move.w     [A6 - 0x64], [A6 + 0x16]
  1957. 000012AC  2D6E 0012 FFB6           move.l     [A6 - 0x4A], [A6 + 0x12]
  1958. 000012B2  2D6E 000E FF98           move.l     [A6 - 0x68], [A6 + 0xE]
  1959. 000012B8  422E FFA0                clr.b      [A6 - 0x60]
  1960. 000012BC  1D6E 000C FFA1           move.b     [A6 - 0x5F], [A6 + 0xC]
  1961. 000012C2  7000                     moveq.l    D0, 0x00
  1962. 000012C4  2D40 FFA2                move.l     [A6 - 0x5E], D0
  1963. 000012C8  558F                     subq.l     A7, 2
  1964. 000012CA  486E FF86                pea.l      [A6 - 0x7A]
  1965. 000012CE  7000                     moveq.l    D0, 0x00
  1966. 000012D0  1F00                     move.b     -[A7], D0
  1967. 000012D2  4EBA FF36                jsr        [PC - 0xCA /* 0000120A */]
  1968. 000012D6  3E1F                     move.w     D7, [A7]+
  1969. 000012D8  206E 0008                movea.l    A0, [A6 + 0x8]
  1970. 000012DC  30AE FF9E                move.w     [A0], [A6 - 0x62]
  1971. 000012E0  3D47 0018                move.w     [A6 + 0x18], D7
  1972. 000012E4  2E2E FF82                move.l     D7, [A6 - 0x7E]
  1973. 000012E8  4E5E                     unlink     A6
  1974. 000012EA  205F                     movea.l    A0, [A7]+
  1975. 000012EC  4FEF 0010                lea.l      A7, [A7 + 0x10]
  1976. 000012F0  4ED0                     jmp        [A0]
  1977. 000012F2  8748 4F50                pack       -[A3], -[A0], 0x4F50
  1978. 000012F6  454E                     chk.w      D2, A6
  1979. 000012F8  5246                     addq.w     D6, 1
  1980. 000012FA  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  1981. // begin alternate branch 000012FC-00001300
  1982. fn000012FC:
  1983. 000012FC  4E56 FFCC                link       A6, -0x0034
  1984. // end alternate branch 000012FC-00001300
  1985. fn000012FC: // (misaligned)
  1986. 000012FE  FFCC                     .invalid   <<F/7/7>>
  1987. 00001300  2F07                     move.l     -[A7], D7
  1988. 00001302  3D6E 0014 FFE2           move.w     [A6 - 0x1E], [A6 + 0x14]
  1989. 00001308  426E FFE6                clr.w      [A6 - 0x1A]
  1990. 0000130C  7000                     moveq.l    D0, 0x00
  1991. 0000130E  2D40 FFDE                move.l     [A6 - 0x22], D0
  1992. 00001312  558F                     subq.l     A7, 2
  1993. 00001314  486E FFCC                pea.l      [A6 - 0x34]
  1994. 00001318  7000                     moveq.l    D0, 0x00
  1995. 0000131A  1F00                     move.b     -[A7], D0
  1996. 0000131C  4EBA FED6                jsr        [PC - 0x12A /* 000011F4 */]
  1997. 00001320  3E1F                     move.w     D7, [A7]+
  1998. 00001322  206E 0010                movea.l    A0, [A6 + 0x10]
  1999. 00001326  30AE FFEC                move.w     [A0], [A6 - 0x14]
  2000. 0000132A  206E 000C                movea.l    A0, [A6 + 0xC]
  2001. 0000132E  20AE FFFC                move.l     [A0], [A6 - 0x4]
  2002. 00001332  206E 0008                movea.l    A0, [A6 + 0x8]
  2003. 00001336  20AE FFE8                move.l     [A0], [A6 - 0x18]
  2004. 0000133A  3D47 0016                move.w     [A6 + 0x16], D7
  2005. 0000133E  2E2E FFC8                move.l     D7, [A6 - 0x38]
  2006. 00001342  4E5E                     unlink     A6
  2007. 00001344  205F                     movea.l    A0, [A7]+
  2008. 00001346  4FEF 000E                lea.l      A7, [A7 + 0xE]
  2009. 0000134A  4ED0                     jmp        [A0]
  2010. 0000134C  8947 4554                pack       D4, D7, 0x4554
  2011. 00001350  5744                     subq.w     D4, 3
  2012. 00001352  494E                     chk.w      D4, A6
  2013. 00001354  464F                     not.w      A7
  2014. 00001356  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  2015. // begin alternate branch 00001358-0000135C
  2016. fn00001358:
  2017. 00001358  4E56 FFE8                link       A6, -0x0018
  2018. // end alternate branch 00001358-0000135C
  2019. fn00001358: // (misaligned)
  2020. 0000135A  FFE8                     .invalid   <<F/7/7>>
  2021. 0000135C  48E7 0F08                movem.l    -[A7], D4,D5,D6,D7,A4
  2022. 00001360  182E 0008                move.b     D4, [A6 + 0x8]
  2023. 00001364  286E 000A                movea.l    A4, [A6 + 0xA]
  2024. 00001368  2A2E 000E                move.l     D5, [A6 + 0xE]
  2025. 0000136C  3C2E 0012                move.w     D6, [A6 + 0x12]
  2026. 00001370  0C78 0600 015A           cmpi.w     [0x0000015A /* SysVersion */], 0x600
  2027. 00001376  6D34                     blt        +0x36 /* 000013AC */
  2028. 00001378  303C A89F                move.w     D0, 0xA89F
  2029. 0000137C  A146                     syscall    GetTrapAddress, flags=1
  2030. 0000137E  2D48 FFE8                move.l     [A6 - 0x18], A0
  2031. 00001382  598F                     subq.l     A7, 4
  2032. 00001384  3F3C A81A                move.w     -[A7], 0xA81A
  2033. 00001388  7001                     moveq.l    D0, 0x01
  2034. 0000138A  1F00                     move.b     -[A7], D0
  2035. 0000138C  4EBA FD54                jsr        [PC - 0x2AC /* 000010E2 */]
  2036. 00001390  202E FFE8                move.l     D0, [A6 - 0x18]
  2037. 00001394  B09F                     cmp.l      D0, [A7]+
  2038. 00001396  6714                     beq        +0x16 /* 000013AC */
  2039. 00001398  558F                     subq.l     A7, 2
  2040. 0000139A  3F06                     move.w     -[A7], D6
  2041. 0000139C  2F05                     move.l     -[A7], D5
  2042. 0000139E  2F0C                     move.l     -[A7], A4
  2043. 000013A0  1F04                     move.b     -[A7], D4
  2044. 000013A2  A81A                     syscall    HOpenResFile
  2045. 000013A4  3D5F 0014                move.w     [A6 + 0x14], [A7]+
  2046. 000013A8  6000 00CC                bra        +0xCE /* 00001476 */
  2047. label000013AC:
  2048. 000013AC  3D7C FFFF FFEC           move.w     [A6 - 0x14], 0xFFFF
  2049. 000013B2  558F                     subq.l     A7, 2
  2050. 000013B4  3F06                     move.w     -[A7], D6
  2051. 000013B6  2F05                     move.l     -[A7], D5
  2052. 000013B8  2F0C                     move.l     -[A7], A4
  2053. 000013BA  1F04                     move.b     -[A7], D4
  2054. 000013BC  486E FFEE                pea.l      [A6 - 0x12]
  2055. 000013C0  4EBA FEDE                jsr        [PC - 0x122 /* 000012A0 */]
  2056. 000013C4  3E1F                     move.w     D7, [A7]+
  2057. 000013C6  660C                     bne        +0xE /* 000013D4 */
  2058. 000013C8  558F                     subq.l     A7, 2
  2059. 000013CA  3F2E FFEE                move.w     -[A7], [A6 - 0x12]
  2060. 000013CE  4EBA FDA4                jsr        [PC - 0x25C /* 00001174 */]
  2061. 000013D2  3E1F                     move.w     D7, [A7]+
  2062. label000013D4:
  2063. 000013D4  4A47                     tst.w      D7
  2064. 000013D6  6708                     beq        +0xA /* 000013E0 */
  2065. 000013D8  0C47 FFCF                cmpi.w     D7, 0xFFCF
  2066. 000013DC  6600 008E                bne        +0x90 /* 0000146C */
  2067. label000013E0:
  2068. 000013E0  558F                     subq.l     A7, 2
  2069. 000013E2  7000                     moveq.l    D0, 0x00
  2070. 000013E4  2F00                     move.l     -[A7], D0
  2071. 000013E6  486E FFF0                pea.l      [A6 - 0x10]
  2072. 000013EA  486E FFF2                pea.l      [A6 - 0xE]
  2073. 000013EE  4EBA FE2C                jsr        [PC - 0x1D4 /* 0000121C */]
  2074. 000013F2  3E1F                     move.w     D7, [A7]+
  2075. 000013F4  6676                     bne        +0x78 /* 0000146C */
  2076. 000013F6  558F                     subq.l     A7, 2
  2077. 000013F8  3F2E FFF0                move.w     -[A7], [A6 - 0x10]
  2078. 000013FC  486E FFF6                pea.l      [A6 - 0xA]
  2079. 00001400  486E FFF8                pea.l      [A6 - 0x8]
  2080. 00001404  486E FFFC                pea.l      [A6 - 0x4]
  2081. 00001408  4EBA FEF2                jsr        [PC - 0x10E /* 000012FC */]
  2082. 0000140C  3E1F                     move.w     D7, [A7]+
  2083. 0000140E  665C                     bne        +0x5E /* 0000146C */
  2084. 00001410  558F                     subq.l     A7, 2
  2085. 00001412  7000                     moveq.l    D0, 0x00
  2086. 00001414  2F00                     move.l     -[A7], D0
  2087. 00001416  3F06                     move.w     -[A7], D6
  2088. 00001418  2F05                     move.l     -[A7], D5
  2089. 0000141A  4EBA FE48                jsr        [PC - 0x1B8 /* 00001264 */]
  2090. 0000141E  3E1F                     move.w     D7, [A7]+
  2091. 00001420  6616                     bne        +0x18 /* 00001438 */
  2092. 00001422  558F                     subq.l     A7, 2
  2093. 00001424  2F0C                     move.l     -[A7], A4
  2094. 00001426  7000                     moveq.l    D0, 0x00
  2095. 00001428  3F00                     move.w     -[A7], D0
  2096. 0000142A  1F04                     move.b     -[A7], D4
  2097. 0000142C  A9C4                     syscall    OpenRFPerm
  2098. 0000142E  3D5F FFEC                move.w     [A6 - 0x14], [A7]+
  2099. 00001432  558F                     subq.l     A7, 2
  2100. 00001434  A9AF                     syscall    ResError
  2101. 00001436  3E1F                     move.w     D7, [A7]+
  2102. label00001438:
  2103. 00001438  7002                     moveq.l    D0, 0x02
  2104. 0000143A  B0AE FFF8                cmp.l      D0, [A6 - 0x8]
  2105. 0000143E  6616                     bne        +0x18 /* 00001456 */
  2106. 00001440  558F                     subq.l     A7, 2
  2107. 00001442  7000                     moveq.l    D0, 0x00
  2108. 00001444  2F00                     move.l     -[A7], D0
  2109. 00001446  3F2E FFF0                move.w     -[A7], [A6 - 0x10]
  2110. 0000144A  2F2E FFF2                move.l     -[A7], [A6 - 0xE]
  2111. 0000144E  4EBA FE14                jsr        [PC - 0x1EC /* 00001264 */]
  2112. 00001452  381F                     move.w     D4, [A7]+
  2113. 00001454  6010                     bra        +0x12 /* 00001466 */
  2114. label00001456:
  2115. 00001456  558F                     subq.l     A7, 2
  2116. 00001458  7000                     moveq.l    D0, 0x00
  2117. 0000145A  2F00                     move.l     -[A7], D0
  2118. 0000145C  3F2E FFF0                move.w     -[A7], [A6 - 0x10]
  2119. 00001460  4EBA FD4E                jsr        [PC - 0x2B2 /* 000011B0 */]
  2120. 00001464  381F                     move.w     D4, [A7]+
  2121. label00001466:
  2122. 00001466  4A47                     tst.w      D7
  2123. 00001468  6602                     bne        +0x4 /* 0000146C */
  2124. 0000146A  3E04                     move.w     D7, D4
  2125. label0000146C:
  2126. 0000146C  31C7 0A60                move.w     [0x00000A60 /* ResErr */], D7
  2127. 00001470  3D6E FFEC 0014           move.w     [A6 + 0x14], [A6 - 0x14]
  2128. label00001476:
  2129. 00001476  4CEE 10F0 FFD4           movem.l    D4,D5,D6,D7,A4, [A6 - 0x2C]
  2130. 0000147C  4E5E                     unlink     A6
  2131. 0000147E  205F                     movea.l    A0, [A7]+
  2132. 00001480  4FEF 000C                lea.l      A7, [A7 + 0xC]
  2133. 00001484  4ED0                     jmp        [A0]
  2134. 00001486  8C48                     or.w       D6, A0
  2135. 00001488  4F50                     chk.w      D7, [A0]
  2136. 0000148A  454E                     chk.w      D2, A6
  2137. 0000148C  5245                     addq.w     D5, 1
  2138. 0000148E  5346                     subq.w     D6, 1
  2139. 00001490  494C                     chk.w      D4, A4
  2140. 00001492  4500                     .invalid   2, D0 // invalid opcode 4 with b == 4
  2141. 00001494  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  2142. // begin alternate branch 00001496-0000149C
  2143. fn00001496:
  2144. 00001496  4E56 0000                link       A6, 0
  2145. 0000149A  594F                     subq.w     A7, 4
  2146. // end alternate branch 00001496-0000149C
  2147. fn00001496: // (misaligned)
  2148. 00001498  0000 594F                ori.b      D0, 0x4F /* 'O' */
  2149. 0000149C  2F3C 5354 5223           move.l     -[A7], 0x53545223 /* 'STR#' */
  2150. 000014A2  3F2E 000A                move.w     -[A7], [A6 + 0xA]
  2151. 000014A6  A9A0                     syscall    GetResource
  2152. 000014A8  226E 000C                movea.l    A1, [A6 + 0xC]
  2153. 000014AC  4211                     clr.b      [A1]
  2154. 000014AE  201F                     move.l     D0, [A7]+
  2155. 000014B0  6722                     beq        +0x24 /* 000014D4 */
  2156. 000014B2  2040                     movea.l    A0, D0
  2157. 000014B4  2050                     movea.l    A0, [A0]
  2158. 000014B6  3018                     move.w     D0, [A0]+
  2159. 000014B8  322E 0008                move.w     D1, [A6 + 0x8]
  2160. 000014BC  6716                     beq        +0x18 /* 000014D4 */
  2161. 000014BE  B240                     cmp.w      D1, D0
  2162. 000014C0  6212                     bhi        +0x14 /* 000014D4 */
  2163. 000014C2  7000                     moveq.l    D0, 0x00
  2164. label000014C4:
  2165. 000014C4  5341                     subq.w     D1, 1
  2166. 000014C6  6706                     beq        +0x8 /* 000014CE */
  2167. 000014C8  1018                     move.b     D0, [A0]+
  2168. 000014CA  D1C0                     add.l      A0, D0
  2169. 000014CC  60F6                     bra        -0x8 /* 000014C4 */
  2170. label000014CE:
  2171. 000014CE  1010                     move.b     D0, [A0]
  2172. 000014D0  5240                     addq.w     D0, 1
  2173. 000014D2  A02E                     syscall    BlockMove/BlockMoveData
  2174. label000014D4:
  2175. 000014D4  4E5E                     unlink     A6
  2176. 000014D6  205F                     movea.l    A0, [A7]+
  2177. 000014D8  508F                     addq.l     A7, 8
  2178. 000014DA  4ED0                     jmp        [A0]
  2179. fn000014DC:
  2180. 000014DC  4A78 028E                tst.w      [0x0000028E /* ROM85 */]
  2181. 000014E0  6B22                     bmi        +0x24 /* 00001504 */
  2182. 000014E2  303C 0090                move.w     D0, 0x90
  2183. 000014E6  A346                     syscall    GetOSTrapAddress, flags=3
  2184. 000014E8  2248                     movea.l    A1, A0
  2185. 000014EA  303C 009F                move.w     D0, 0x9F
  2186. 000014EE  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  2187. 000014F0  B3C8                     cmpa.l     A1, A0
  2188. 000014F2  6710                     beq        +0x12 /* 00001504 */
  2189. 000014F4  225F                     movea.l    A1, [A7]+
  2190. 000014F6  205F                     movea.l    A0, [A7]+
  2191. 000014F8  301F                     move.w     D0, [A7]+
  2192. 000014FA  2F09                     move.l     -[A7], A1
  2193. 000014FC  A090                     syscall    SysEnvirons
  2194. 000014FE  3F40 0004                move.w     [A7 + 0x4], D0
  2195. 00001502  4E75                     rts
  2196. label00001504:
  2197. 00001504  206F 0004                movea.l    A0, [A7 + 0x4]
  2198. 00001508  303C 0001                move.w     D0, 0x1
  2199. 0000150C  2248                     movea.l    A1, A0
  2200. 0000150E  6006                     bra        +0x8 /* 00001516 */
  2201. 00001510  0313                     btst       [A3], D1
  2202. 00001512  0B02                     btst       D2, D5
  2203. 00001514  0100                     btst       D0, D0
  2204. label00001516:
  2205. 00001516  303C 0010                move.w     D0, 0x10
  2206. 0000151A  E240                     asr        D0.w, 1
  2207. 0000151C  5340                     subq.w     D0, 1
  2208. label0000151E:
  2209. 0000151E  4258                     clr.w      [A0]+
  2210. 00001520  51C8 FFFC                dbf        D0, -0x6 /* 0000151E */
  2211. 00001524  32BC 0001                move.w     [A1], 0x1
  2212. 00001528  2078 02AE                movea.l    A0, [0x000002AE /* ROMBase */]
  2213. 0000152C  337C FFFE 0002           move.w     [A1 + 0x2], 0xFFFE
  2214. 00001532  0C28 00FF 0009           cmpi.b     [A0 + 0x9], 0xFF
  2215. 00001538  6742                     beq        +0x44 /* 0000157C */
  2216. 0000153A  4A28 0008                tst.b      [A0 + 0x8]
  2217. 0000153E  6E20                     bgt        +0x22 /* 00001560 */
  2218. 00001540  337C FFFF 0002           move.w     [A1 + 0x2], 0xFFFF
  2219. 00001546  4A78 028E                tst.w      [0x0000028E /* ROM85 */]
  2220. 0000154A  6B30                     bmi        +0x32 /* 0000157C */
  2221. 0000154C  337C 0001 0002           move.w     [A1 + 0x2], 0x1
  2222. 00001552  4A78 0B22                tst.w      [0x00000B22 /* HWCfgFlags */]
  2223. 00001556  6A24                     bpl        +0x26 /* 0000157C */
  2224. 00001558  337C 0002 0002           move.w     [A1 + 0x2], 0x2
  2225. 0000155E  601C                     bra        +0x1E /* 0000157C */
  2226. label00001560:
  2227. 00001560  4269 0002                clr.w      [A1 + 0x2]
  2228. 00001564  0C28 0002 0008           cmpi.b     [A0 + 0x8], 0x2
  2229. 0000156A  6E10                     bgt        +0x12 /* 0000157C */
  2230. 0000156C  6708                     beq        +0xA /* 00001576 */
  2231. 0000156E  337C 0004 0002           move.w     [A1 + 0x2], 0x4
  2232. 00001574  6006                     bra        +0x8 /* 0000157C */
  2233. label00001576:
  2234. 00001576  337C 0003 0002           move.w     [A1 + 0x2], 0x3
  2235. label0000157C:
  2236. 0000157C  4269 0004                clr.w      [A1 + 0x4]
  2237. 00001580  0C38 0002 012F           cmpi.b     [0x0000012F /* CPUFlag */], 0x2
  2238. 00001586  6E0A                     bgt        +0xC /* 00001592 */
  2239. 00001588  1038 012F                move.b     D0, [0x0000012F /* CPUFlag */]
  2240. 0000158C  5240                     addq.w     D0, 1
  2241. 0000158E  1340 0007                move.b     [A1 + 0x7], D0
  2242. label00001592:
  2243. 00001592  4A78 028E                tst.w      [0x0000028E /* ROM85 */]
  2244. 00001596  6B0E                     bmi        +0x10 /* 000015A6 */
  2245. 00001598  0838 0004 0B22           btst.b     [0x00000B22 /* HWCfgFlags */], 0x4
  2246. 0000159E  6706                     beq        +0x8 /* 000015A6 */
  2247. 000015A0  137C 0001 0008           move.b     [A1 + 0x8], 0x1
  2248. label000015A6:
  2249. 000015A6  0C78 3FFF 028E           cmpi.w     [0x0000028E /* ROM85 */], 0x3FFF
  2250. 000015AC  6206                     bhi        +0x8 /* 000015B4 */
  2251. 000015AE  137C 0001 0009           move.b     [A1 + 0x9], 0x1
  2252. label000015B4:
  2253. 000015B4  1038 021E                move.b     D0, [0x0000021E /* KbdType */]
  2254. 000015B8  41FA FF5B                lea.l      A0, [PC - 0xA5 /* 00001515, value 0x303C00 '0<\0', cstring "" */]
  2255. 000015BC  323C 0004                move.w     D1, 0x4
  2256. label000015C0:
  2257. 000015C0  B020                     cmp.b      D0, -[A0]
  2258. 000015C2  57C9 FFFC                dbeq       D1, -0x6 /* 000015C0 */
  2259. 000015C6  5241                     addq.w     D1, 1
  2260. 000015C8  3341 000A                move.w     [A1 + 0xA], D1
  2261. 000015CC  4A38 0291                tst.b      [0x00000291 /* PortBUse */]
  2262. 000015D0  6B18                     bmi        +0x1A /* 000015EA */
  2263. 000015D2  1238 01FB                move.b     D1, [0x000001FB /* SPConfig */]
  2264. 000015D6  0201 000F                andi.b     D1, 0xF
  2265. 000015DA  0C01 0001                cmpi.b     D1, 0x1
  2266. 000015DE  660A                     bne        +0xC /* 000015EA */
  2267. 000015E0  2078 02DC                movea.l    A0, [0x000002DC /* ABusDCE */]
  2268. 000015E4  1368 0007 000D           move.b     [A1 + 0xD], [A0 + 0x7]
  2269. label000015EA:
  2270. 000015EA  3378 0210 000E           move.w     [A1 + 0xE], [0x00000210 /* BootDrive */]
  2271. 000015F0  4A78 03F6                tst.w      [0x000003F6 /* FSFCBLen */]
  2272. 000015F4  6D44                     blt        +0x46 /* 0000163A */
  2273. 000015F6  4269 000E                clr.w      [A1 + 0xE]
  2274. 000015FA  323C 003C                move.w     D1, 0x3C /* '<' */
  2275. label000015FE:
  2276. 000015FE  4267                     clr.w      -[A7]
  2277. 00001600  51C9 FFFC                dbf        D1, -0x6 /* 000015FE */
  2278. 00001604  204F                     movea.l    A0, A7
  2279. 00001606  3178 0A58 0018           move.w     [A0 + 0x18], [0x00000A58 /* SysMap */]
  2280. 0000160C  7008                     moveq.l    D0, 0x08
  2281. 0000160E  A260                     syscall    FSDispatch/HFSDispatch, flags=2
  2282. 00001610  6624                     bne        +0x26 /* 00001636 */
  2283. 00001612  3168 0034 0016           move.w     [A0 + 0x16], [A0 + 0x34]
  2284. 00001618  A207                     syscall    GetVolInfo/PBHGetVInfo/HGetVInfo, flags=2
  2285. 0000161A  661A                     bne        +0x1C /* 00001636 */
  2286. 0000161C  2168 005A 0030           move.l     [A0 + 0x30], [A0 + 0x5A]
  2287. 00001622  217C 4552 494B 001C      move.l     [A0 + 0x1C], 0x4552494B /* 'ERIK' */
  2288. 0000162A  7001                     moveq.l    D0, 0x01
  2289. 0000162C  A260                     syscall    FSDispatch/HFSDispatch, flags=2
  2290. 0000162E  6606                     bne        +0x8 /* 00001636 */
  2291. 00001630  3368 0016 000E           move.w     [A1 + 0xE], [A0 + 0x16]
  2292. label00001636:
  2293. 00001636  4FEF 007A                lea.l      A7, [A7 + 0x7A]
  2294. label0000163A:
  2295. 0000163A  2049                     movea.l    A0, A1
  2296. 0000163C  225F                     movea.l    A1, [A7]+
  2297. 0000163E  5C4F                     addq.w     A7, 6
  2298. 00001640  3EBC EA84                move.w     [A7], 0xEA84
  2299. 00001644  4ED1                     jmp        [A1]
  2300. fn00001646:
  2301. 00001646  4E56 0000                link       A6, 0
  2302. 0000164A  203C 0000 A89F           move.l     D0, 0xA89F
  2303. 00001650  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  2304. 00001652  2F08                     move.l     -[A7], A0
  2305. 00001654  203C 0000 A0AD           move.l     D0, 0xA0AD
  2306. 0000165A  A346                     syscall    GetOSTrapAddress, flags=3
  2307. 0000165C  B1DF                     cmpa.l     A0, [A7]+
  2308. 0000165E  670E                     beq        +0x10 /* 0000166E */
  2309. 00001660  202E 000C                move.l     D0, [A6 + 0xC]
  2310. 00001664  A1AD                     syscall    Gestalt, flags=1
  2311. 00001666  226E 0008                movea.l    A1, [A6 + 0x8]
  2312. 0000166A  2288                     move.l     [A1], A0
  2313. 0000166C  6026                     bra        +0x28 /* 00001694 */
  2314. label0000166E:
  2315. 0000166E  41FA 0036                lea.l      A0, [PC + 0x36 /* 000016A6, value 0x76657273 'vers', cstring "vers" */]
  2316. 00001672  303C EA51                move.w     D0, 0xEA51
  2317. 00001676  222E 000C                move.l     D1, [A6 + 0xC]
  2318. label0000167A:
  2319. 0000167A  B298                     cmp.l      D1, [A0]+
  2320. 0000167C  6706                     beq        +0x8 /* 00001684 */
  2321. 0000167E  4A98                     tst.l      [A0]+
  2322. 00001680  6712                     beq        +0x14 /* 00001694 */
  2323. 00001682  60F6                     bra        -0x8 /* 0000167A */
  2324. label00001684:
  2325. 00001684  43FA 0020                lea.l      A1, [PC + 0x20 /* 000016A6, value 0x76657273 'vers', cstring "vers" */]
  2326. 00001688  D3D0                     add.l      A1, [A0]
  2327. 0000168A  4ED1                     jmp        [A1]
  2328. label0000168C:
  2329. 0000168C  226E 0008                movea.l    A1, [A6 + 0x8]
  2330. 00001690  2280                     move.l     [A1], D0
  2331. 00001692  4240                     clr.w      D0
  2332. label00001694:
  2333. 00001694  3D40 0010                move.w     [A6 + 0x10], D0
  2334. 00001698  4E5E                     unlink     A6
  2335. 0000169A  205F                     movea.l    A0, [A7]+
  2336. 0000169C  508F                     addq.l     A7, 8
  2337. 0000169E  4ED0                     jmp        [A0]
  2338. label000016A0:
  2339. 000016A0  303C EA52                move.w     D0, 0xEA52
  2340. 000016A4  60EE                     bra        -0x10 /* 00001694 */
  2341. 000016A6  7665                     moveq.l    D3, 0x65
  2342. 000016A8  7273                     moveq.l    D1, 0x73
  2343. 000016AA  0000 0060                ori.b      D0, 0x60 /* '`' */
  2344. 000016AE  6D61                     blt        +0x63 /* 00001711 */
  2345. 000016B0  6368                     bls        +0x6A /* 0000171A */
  2346. 000016B2  0000 0064                ori.b      D0, 0x64 /* 'd' */
  2347. 000016B6  7379                     moveq.l    D1, 0x79
  2348. 000016B8  7376                     moveq.l    D1, 0x76
  2349. 000016BA  0000 0088                ori.b      D0, 0x88
  2350. 000016BE  7072                     moveq.l    D0, 0x72
  2351. 000016C0  6F63                     ble        +0x65 /* 00001725 */
  2352. 000016C2  0000 0092                ori.b      D0, 0x92
  2353. 000016C6  6670                     bne        +0x72 /* 00001738 */
  2354. 000016C8  7520                     moveq.l    D2, 0x20
  2355. 000016CA  0000 009E                ori.b      D0, 0x9E
  2356. 000016CE  7164                     moveq.l    D0, 0x64
  2357. 000016D0  2020                     move.l     D0, -[A0]
  2358. 000016D2  0000 00E8                ori.b      D0, 0xE8
  2359. 000016D6  6B62                     bmi        +0x64 /* 0000173A */
  2360. 000016D8  6420                     bcc        +0x22 /* 000016FA */
  2361. 000016DA  0000 011A                ori.b      D0, 0x1A
  2362. 000016DE  6174                     bsr        +0x76 /* 00001754 */
  2363. 000016E0  6C6B                     bge        +0x6D /* 0000174D */
  2364. 000016E2  0000 0142                ori.b      D0, 0x42 /* 'B' */
  2365. 000016E6  6D6D                     blt        +0x6F /* 00001755 */
  2366. 000016E8  7520                     moveq.l    D2, 0x20
  2367. 000016EA  0000 0164                ori.b      D0, 0x64 /* 'd' */
  2368. 000016EE  7261                     moveq.l    D1, 0x61
  2369. 000016F0  6D20                     blt        +0x22 /* 00001712 */
  2370. 000016F2  0000 0188                ori.b      D0, 0x88
  2371. 000016F6  6C72                     bge        +0x74 /* 0000176A */
  2372. 000016F8  616D                     bsr        +0x6F /* 00001767 */
  2373. label000016FA:
  2374. 000016FA  0000 0188                ori.b      D0, 0x88
  2375. 000016FE  0000 0000                ori.b      D0, 0x0
  2376. 00001702  0000 0000                ori.b      D0, 0x0
  2377. 00001706  7001                     moveq.l    D0, 0x01
  2378. 00001708  6082                     bra        -0x7C /* 0000168C */
  2379. 0000170A  2278 02AE                movea.l    A1, [0x000002AE /* ROMBase */]
  2380. 0000170E  7004                     moveq.l    D0, 0x04
  2381. 00001710  0C69 0075 0008           cmpi.w     [A1 + 0x8], 0x75 /* 'u' */
  2382. // begin alternate branch 00001712-0000171A
  2383. label00001712:
  2384. 00001712  0075 0008 6712 0C69      ori.w      [[A5 + D6 * 8] + 0xC69], 0x8
  2385. // end alternate branch 00001712-0000171A
  2386. label00001712: // (misaligned)
  2387. 00001716  6712                     beq        +0x14 /* 0000172A */
  2388. 00001718  0C69 0276 0008           cmpi.w     [A1 + 0x8], 0x276
  2389. // begin alternate branch 0000171A-00001720
  2390. label0000171A:
  2391. 0000171A  0276 0008 6604           andi.w     [A6 + D6.w * 8 + 0x4], 0x8
  2392. // end alternate branch 0000171A-00001720
  2393. label0000171A: // (misaligned)
  2394. 0000171E  6604                     bne        +0x6 /* 00001724 */
  2395. 00001720  5240                     addq.w     D0, 1
  2396. 00001722  6006                     bra        +0x8 /* 0000172A */
  2397. label00001724:
  2398. 00001724  1038 0CB3                move.b     D0, [0x00000CB3 /* MMUFluff/MachineType */]
  2399. 00001728  5C80                     addq.l     D0, 6
  2400. label0000172A:
  2401. 0000172A  6000 FF60                bra        -0x9E /* 0000168C */
  2402. 0000172E  7000                     moveq.l    D0, 0x00
  2403. 00001730  3038 015A                move.w     D0, [0x0000015A /* SysVersion */]
  2404. 00001734  6000 FF56                bra        -0xA8 /* 0000168C */
  2405. label00001738:
  2406. 00001738  7000                     moveq.l    D0, 0x00
  2407. label0000173A:
  2408. 0000173A  1038 012F                move.b     D0, [0x0000012F /* CPUFlag */]
  2409. 0000173E  5240                     addq.w     D0, 1
  2410. 00001740  6000 FF4A                bra        -0xB4 /* 0000168C */
  2411. 00001744  0C38 0004 012F           cmpi.b     [0x0000012F /* CPUFlag */], 0x4
  2412. 0000174A  6738                     beq        +0x3A /* 00001784 */
  2413. 0000174C  0838 0004 0B22           btst.b     [0x00000B22 /* HWCfgFlags */], 0x4
  2414. 00001752  6734                     beq        +0x36 /* 00001788 */
  2415. fn00001754:
  2416. 00001754  204F                     movea.l    A0, A7
  2417. 00001756  F280 0000                fnop
  2418. 0000175A  F327                     .extension 0x327 <<F/4-5/1>> // unimplemented
  2419. 0000175C  3017                     move.w     D0, [A7]
  2420. 0000175E  2E48                     movea.l    A7, A0
  2421. 00001760  0C40 1F18                cmpi.w     D0, 0x1F18
  2422. 00001764  6716                     beq        +0x18 /* 0000177C */
  2423. 00001766  0C40 3F18                cmpi.w     D0, 0x3F18
  2424. label0000176A:
  2425. 0000176A  6710                     beq        +0x12 /* 0000177C */
  2426. 0000176C  0C40 3F38                cmpi.w     D0, 0x3F38 /* '?8' */
  2427. 00001770  670E                     beq        +0x10 /* 00001780 */
  2428. 00001772  0C40 1F38                cmpi.w     D0, 0x1F38
  2429. 00001776  6708                     beq        +0xA /* 00001780 */
  2430. 00001778  7000                     moveq.l    D0, 0x00
  2431. 0000177A  600E                     bra        +0x10 /* 0000178A */
  2432. label0000177C:
  2433. 0000177C  7001                     moveq.l    D0, 0x01
  2434. 0000177E  600A                     bra        +0xC /* 0000178A */
  2435. label00001780:
  2436. 00001780  7002                     moveq.l    D0, 0x02
  2437. 00001782  6006                     bra        +0x8 /* 0000178A */
  2438. label00001784:
  2439. 00001784  7003                     moveq.l    D0, 0x03
  2440. 00001786  6002                     bra        +0x4 /* 0000178A */
  2441. label00001788:
  2442. 00001788  7000                     moveq.l    D0, 0x00
  2443. label0000178A:
  2444. 0000178A  6000 FF00                bra        -0xFE /* 0000168C */
  2445. 0000178E  0C78 3FFF 028E           cmpi.w     [0x0000028E /* ROM85 */], 0x3FFF
  2446. 00001794  6E1C                     bgt        +0x1E /* 000017B2 */
  2447. 00001796  303C A89F                move.w     D0, 0xA89F
  2448. 0000179A  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  2449. 0000179C  2408                     move.l     D2, A0
  2450. 0000179E  203C 0000 AB03           move.l     D0, 0xAB03
  2451. 000017A4  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  2452. 000017A6  203C 0000 0100           move.l     D0, 0x100
  2453. 000017AC  B488                     cmp.l      D2, A0
  2454. 000017AE  6606                     bne        +0x8 /* 000017B6 */
  2455. 000017B0  600A                     bra        +0xC /* 000017BC */
  2456. label000017B2:
  2457. 000017B2  7000                     moveq.l    D0, 0x00
  2458. 000017B4  6006                     bra        +0x8 /* 000017BC */
  2459. label000017B6:
  2460. 000017B6  203C 0000 0200           move.l     D0, 0x200
  2461. label000017BC:
  2462. 000017BC  6000 FECE                bra        -0x130 /* 0000168C */
  2463. 000017C0  1038 021E                move.b     D0, [0x0000021E /* KbdType */]
  2464. 000017C4  41FA 0016                lea.l      A0, [PC + 0x16 /* 000017DC, value 0x3130B02 */]
  2465. 000017C8  2248                     movea.l    A1, A0
  2466. label000017CA:
  2467. 000017CA  1218                     move.b     D1, [A0]+
  2468. 000017CC  6700 FED2                beq        -0x12C /* 000016A0 */
  2469. 000017D0  B200                     cmp.b      D1, D0
  2470. 000017D2  66F6                     bne        -0x8 /* 000017CA */
  2471. 000017D4  91C9                     sub.l      A0, A1
  2472. 000017D6  2008                     move.l     D0, A0
  2473. 000017D8  6000 FEB2                bra        -0x14C /* 0000168C */
  2474. 000017DC  0313                     btst       [A3], D1
  2475. 000017DE  0B02                     btst       D2, D5
  2476. 000017E0  0106                     btst       D6, D0
  2477. 000017E2  0704                     btst       D4, D3
  2478. 000017E4  0508                     btst       A0, D2
  2479. 000017E6  0900                     btst       D0, D4
  2480. 000017E8  7000                     moveq.l    D0, 0x00
  2481. 000017EA  4A38 0291                tst.b      [0x00000291 /* PortBUse */]
  2482. 000017EE  6B16                     bmi        +0x18 /* 00001806 */
  2483. 000017F0  1238 01FB                move.b     D1, [0x000001FB /* SPConfig */]
  2484. 000017F4  0201 000F                andi.b     D1, 0xF
  2485. 000017F8  0C01 0001                cmpi.b     D1, 0x1
  2486. 000017FC  6608                     bne        +0xA /* 00001806 */
  2487. 000017FE  2078 02DC                movea.l    A0, [0x000002DC /* ABusDCE */]
  2488. 00001802  1028 0007                move.b     D0, [A0 + 0x7]
  2489. label00001806:
  2490. 00001806  6000 FE84                bra        -0x17A /* 0000168C */
  2491. 0000180A  0C38 0002 012F           cmpi.b     [0x0000012F /* CPUFlag */], 0x2
  2492. 00001810  6D16                     blt        +0x18 /* 00001828 */
  2493. 00001812  7000                     moveq.l    D0, 0x00
  2494. 00001814  1038 0CB1                move.b     D0, [0x00000CB1 /* MMUType */]
  2495. 00001818  0C00 0001                cmpi.b     D0, 0x1
  2496. 0000181C  670C                     beq        +0xE /* 0000182A */
  2497. 0000181E  0C00 0003                cmpi.b     D0, 0x3
  2498. 00001822  6D04                     blt        +0x6 /* 00001828 */
  2499. 00001824  5340                     subq.w     D0, 1
  2500. 00001826  6002                     bra        +0x4 /* 0000182A */
  2501. label00001828:
  2502. 00001828  7000                     moveq.l    D0, 0x00
  2503. label0000182A:
  2504. 0000182A  6000 FE60                bra        -0x19E /* 0000168C */
  2505. 0000182E  303C A89F                move.w     D0, 0xA89F
  2506. 00001832  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  2507. 00001834  2408                     move.l     D2, A0
  2508. 00001836  203C 0000 A88F           move.l     D0, 0xA88F
  2509. 0000183C  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  2510. 0000183E  2038 0108                move.l     D0, [0x00000108 /* MemTop */]
  2511. 00001842  B488                     cmp.l      D2, A0
  2512. 00001844  670A                     beq        +0xC /* 00001850 */
  2513. 00001846  598F                     subq.l     A7, 4
  2514. 00001848  3F3C 0016                move.w     -[A7], 0x16
  2515. 0000184C  A88F                     syscall    OSDispatch
  2516. 0000184E  201F                     move.l     D0, [A7]+
  2517. label00001850:
  2518. 00001850  6000 FE3A                bra        -0x1C4 /* 0000168C */
  2519. fn00001854:
  2520. 00001854  225F                     movea.l    A1, [A7]+
  2521. 00001856  201F                     move.l     D0, [A7]+
  2522. 00001858  0838 0006 028E           btst.b     [0x0000028E /* ROM85 */], 0x6
  2523. 0000185E  6606                     bne        +0x8 /* 00001866 */
  2524. 00001860  A055                     syscall    StripAddress
  2525. 00001862  2E80                     move.l     [A7], D0
  2526. 00001864  4ED1                     jmp        [A1]
  2527. label00001866:
  2528. 00001866  C0B8 031A                and.l      D0, [0x0000031A /* MaskBC/MaskHandle/MaskPtr/Lo3Bytes */]
  2529. 0000186A  2E80                     move.l     [A7], D0
  2530. 0000186C  4ED1                     jmp        [A1]
  2531. fn0000186E:
  2532. 0000186E  4E56 0000                link       A6, 0
  2533. 00001872  48E7 7F38                movem.l    -[A7], D1,D2,D3,D4,D5,D6,D7,A2,A3,A4
  2534. 00001876  7000                     moveq.l    D0, 0x00
  2535. 00001878  246E 000C                movea.l    A2, [A6 + 0xC]
  2536. 0000187C  226E 0008                movea.l    A1, [A6 + 0x8]
  2537. 00001880  1012                     move.b     D0, [A2]
  2538. 00001882  6706                     beq        +0x8 /* 0000188A */
  2539. label00001884:
  2540. 00001884  12DA                     move.b     [A1]+, [A2]+
  2541. 00001886  51C8 FFFC                dbf        D0, -0x6 /* 00001884 */
  2542. label0000188A:
  2543. 0000188A  4CDF 1CFE                movem.l    D1,D2,D3,D4,D5,D6,D7,A2,A3,A4, [A7]+
  2544. 0000188E  4E5E                     unlink     A6
  2545. 00001890  4E75                     rts
  2546.